Vous êtes sur la page 1sur 5

Application Internet / M1 INPTIC 2019/2020

TP4 langage de script PHP

Tableaux

 Tableaux indicés ✏ définir individuellement une valeur pour chacun des ses
éléments. Par défaut, l’indice du premier élément d’un tableau est zéro.

Déclaration Exemple

$tab = array (val0, val1, val3,…, valn); $nombres = array (1, 2, 3, 4, 5, 6);

$tab[n] = valeur; $nombres[0]=1; $nombres[1]=2;


$nombres[2]=3; … $nombres[5]=6;

 Tableau associatif ✏ tableau associant une valeur à une chaîne de caractères :

Déclaration Exemple

$tab_asso = array (″cléA″=>valA, $panier=array( ‘fruit’ => ‘banane’,


″cléB″=>valB, …, ″cléZ″=>valZ); ‘legume’ => ‘haricot’ );

$tab_asso[″clé″] = val; $panier[‘fruit’]=‘banane’;


$panier[‘legume’]= ‘haricot’;

Les fonctions

 each : la fonction renvoie l'index et la valeur courante dans un tableau à 2


elements,

$a=each($tablo) => $a[0] contient l'index , $a[1] la valeur.


Tableau indicé
$tab=array("samedi", "dimanche", "lundi ");
$tab[9]="jeudi";
Echo count ($tab);
Stab[5]=”mardi”;
Reset ($tab);
while ($element=each($tab))
{ echo ("L'élément d’indice $element[0] a la valeur $element[1] <br>"); }
Echo "<hr>";

3
Application Internet / M1 INPTIC 2019/2020

Tableau associatif
$tab=array("s"=>"samedi", "d"=>"dimanche", "l"=>"lundi ");
$tab["j"]="jeudi";
Reset ($tab);
while ($element=each($tab))
{ echo ("L'élément de clé $element[‘key’] a la valeur $element[‘value’]
<br>"); }

 list : la fonction list( $scalar1, $scalar2, ... ) construit un tableau temporaire à


partir des variables scalaires passées en argument.

◦ List($x, $y) = $tab

Tableau indicé

$tab1=array("samedi", "dimanche", "lundi ");

List($x, $y)=$tab;

echo "les deux premiers éléments sont : $x et $y <hr/> ";

while (list ($cle, $valeur) = each ($tab))

{ echo ("L'élément d’indice $cle[0] a la valeur $valeur[1] <br>"); }

Echo "<hr>";

Tableau associatif

$tab=array("s"=>"samedi", "d"=>"dimanche", "l"=>"lundi ");

List($x, $y)=$tab;

echo "les deux premiers éléments sont : $x et $y <hr/> ";

while (list ($cle, $valeur) = each ($tab))

{ echo ("L'élément de clé $cle a la valeur $valeur <br>"); }

Autres fonctions

3
Application Internet / M1 INPTIC 2019/2020

 sizeoff : Renvoie le nombre d'éléments d'un tableau. C’est un équivalent de


count.
 reset : la fonction reset($tableau) place le pointeur interne sur le premier
élément du tableau, chaque variable tableau possède un pointeur interne
repérant l'élément courant.
 end : la fonction end($tableau) place le pointeur interne du tableau sur le
dernier élément du tableau.
 current : renvoie l'élément courant du tableau.
 next : déplace le pointeur vers l'élément suivant, et renvoie cet élément. S’il
n'existe pas, la fonction renvoie false.
 prev : déplace le pointeur vers l'élément précédent, et renvoie cet élément. S’il
n'existe pas, la fonction renvoie false.
 key : la fonction key($tablo) renvoie l'index de l'élément courant du tableau.

La boucle foreach

Tableau indicé Tableau associatif

Foreach ($tab as $valeur) Foreach ($tab as $cle=>$valeur)

{ {

//bloc d’instruction //bloc d’instruction

} }

$tab=array("samedi", "dimanche", "lundi"); $tab=array("s"=>"samedi",


"d"=>"dimanche", "l"=>"lundi ");
foreach ($tab as $jour)
foreach ($tab as $cle=>$jour)
{ echo ("<b> $jour</b> <br>"); }
{
Echo "<hr>";
echo ("L'élément de clé <b> $cle
foreach ($tab as $indice=>$jour) </b> a la valeur <b> $jour </b>
<br>");
{ echo ("L'élément d’indice <b> $indice
</b> a la valeur <b>$jour </b> <br>");} }

Echo "<hr>";

Manipulation

3
Application Internet / M1 INPTIC 2019/2020

 Extraire une partie d’un tableau

◦ $sous_tab= array_slice (array $tab, int ind, int nb);

– $sous_tab=array_slice($tab, 2,3);

 Ajouter et enlever des éléments

◦ Int array_push($tab, val1, val2, …, valn);

◦ Int array_unshift($tab, val1, val2, …, valn);

◦ Array_pop($tab);

◦ Array_shift ($tab);

 Éliminer les éléments doubles

◦ Array_unique($tab);

Opérations sur les tableaux

 Fusionner des tableaux

◦ $tab= array_merge($tab1, $tab2, …, $tabn);

◦ $tab= array_combine($tcle, $tval);

 Insertion et différence de deux tableaux

◦ Array array_intersect($tab1, $tab2);

◦ Array_diff($tabl, $tab2);

 Mélanger les valeurs de façon aléatoire

◦ Void shuffle(array $tab);

 Opérer une sélection des éléments

◦ Array array_fikter(array $tab.string nom_fonction)

3
Application Internet / M1 INPTIC 2019/2020

Trier les éléments d’un tableau

 Tableaux indicés

◦ L’ordre ASCII : Array sort($tab), Array rsort($tab), Array


reverse($tab).

◦ L’ordre naturel : Array natsort ($tab), Array natcasesort ($tab)

◦ Un critère personnel : void usort($tab. nom_fonction)

 Tableaux associatifs

◦ Les valeurs : void asort(array $tab), void arsort(array $tab), void


uasort(array $tab .string nom_fonction),

◦ Les clés : boolean ksort(array $tab), boolean krsort(array $tab), void


uksort(array $tab .string nom_fonction),
Exercices :
1. Créer un tableau ayant pour valeur les noms des douze mois de l’année. Quelles sont
alors les clés? Parcourir en suite le tableau pour afficher les mois de l’année sous
forme de liste ordonnée.
2. Créer un tableau associant à chaque mois de l’année le nombre de jours du mois.
Quelles sont alors les clés? Les valeurs? Afficher sous forme de tableau, le nombre de
jours de chaque mois.

Vous aimerez peut-être aussi