Download - Bases de php - partie 2
![Page 1: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/1.jpg)
Tableaux (array)Un type à part entière (comme string, integer, etc.)
Permet de grouper des données
Deux types :
Indexé (integer comme identifiant)
Associatif (string comme identifiant)
Taille variable gérée par PHP
![Page 2: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/2.jpg)
Tableaux indexés
Simple liste d’éléments
Créé avec la fonction array() et les paramètres séparés par des virgules :
$tableau = array(14323, 32490, 34202, 4324)
$tableau2 = array(423, $variable, 32122, ‘texte’);
![Page 3: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/3.jpg)
Tableaux indexésEléments repérés par un index
Index toujours unique
![Page 4: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/4.jpg)
Tableaux indexés
Les variables sont rangées dans des « cases »
Accès avec l’index :
$mon_tableau[index]
L’index commence à 0, le premier élément du tableau s’accède avec :
$mon_tableau[0]
![Page 5: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/5.jpg)
Tableaux indexés
On peut directement écrire dans une case :
$tableau[0] = 24312;
$tableau[10] = 32212;
et également lire :
echo $tableau[10]; // Affiche 32212
![Page 6: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/6.jpg)
Tableaux indexés
On peut éviter d’indiquer les index de cette manière :
$tableau[] = 12312;
$tableau[] = 34321;
De cette manière, les nouvelles valeurs sont automatiquement ajoutées à la suite du tableau
![Page 7: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/7.jpg)
Tableaux indexés
Ces syntaxes sont équivalentes :
$tableau1 = array(1, 2, 3);
$tableau2[0] = 1; $tableau2[1] = 2; $tableau2[2] = 3;
$tableau3[] = 1; $tableau3[] = 2; $tableau3[] = 3;
![Page 8: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/8.jpg)
Tableaux associatifsEvite de passer par un numéro pour l’index
Utilise une string en tant que clé (index)
![Page 9: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/9.jpg)
Tableaux associatifsOn utilise toujours la fonction array() pour les créer
On assigne les clés et éléments en les séparant par => :
![Page 10: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/10.jpg)
Tableaux associatifs
On peut directement référencer une valeur comme pour les tableaux indexés :
$tableau[‘nom’] = ‘Kenobi’;
et y accéder :
echo ’’{$tableau[‘nom’]} n’est pas ton père’’;
![Page 11: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/11.jpg)
Tableaux (array)
Les tableaux indexés sont en fait une sorte de tableaux associatifs avec des valeurs numériques en clé
On peut donc mélanger des index numériques et associatifs dans des tableaux
![Page 12: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/12.jpg)
Tableau multidimensionnelUn tableau peut contenir un autre tableau en valeur = matrice
![Page 13: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/13.jpg)
Tableau multidimensionnel
Création d’un tableau multidimensionnel
$matrice[x][y]
![Page 14: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/14.jpg)
Tableau multidimensionnelOn peut toujours créer des tableaux multidimensionnels avec la fonction array() :
![Page 15: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/15.jpg)
BouclesPermettent d’exécuter plusieurs fois des instructions en fonction d’une (ou plusieurs) condition(s)
3 types de boucles :
while(//condition){}
for(//initialisation, //condition, //instruction){}
foreach(//instruction){}
![Page 16: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/16.jpg)
Boucle while
Correspond à « tant que »
Permet d’exécuter des instructions « tant que » la condition est remplie
![Page 17: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/17.jpg)
Boucle whileExemple de code
![Page 18: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/18.jpg)
Boucle whilePeut s’écrire avec do{}while(), le code est alors exécuté au moins 1 fois
![Page 19: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/19.jpg)
Boucle forS’écrit for(//initialisation; //condition; //instruction) :
Initialisation : Code exécuté pour l’initialisation de la boucle
Condition : Condition testé à chaque fois pour exécuter les instructions de la boucle
Instruction : Instruction effectuée après chaque passage dans la boucle, généralement il s’agit d’une incrémentation
![Page 20: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/20.jpg)
Boucle for
![Page 21: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/21.jpg)
Boucle forExemple de code
![Page 22: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/22.jpg)
Boucle foreach
Permet de parcourir les tableaux
Deux syntaxes :
foreach($tableau as $element){ //Instructions }
foreach($tableau as $cle=>$element){ //Instructions }
![Page 23: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/23.jpg)
Boucle foreach
A chaque itération de la boucle :
On assigne la valeur de l’élément courant à la variable $element
Le pointeur interne du tableau est avancé d’un élément (pour accéder au prochain élément lors de la prochaine itération)
foreach($tableau as $element){ //Instructions }
![Page 24: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/24.jpg)
Boucle foreach
Attention, la boucle fonctionne sur une copie du tableau spécifié, pas sur le tableau lui-même
Ce qui signifie que si je modifie dans une boucle foreach la variable $element, cet élément ne sera pas modifié dans le tableau (c.f. Références)
foreach($tableau as $element){ //Instructions }
![Page 25: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/25.jpg)
Boucle foreach
![Page 26: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/26.jpg)
Boucle foreach et références
Il est possible d’utiliser les références pour modifier directement une valeur
à partir de PHP5
![Page 27: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/27.jpg)
Instructions d’arrêt
Les instructions permettent de sauter ou d’arrêter le déroulement d’une boucle :
break;
continue;
![Page 28: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/28.jpg)
BreakCette instruction permet de sortir d’une structure conditionnelle telles que switch, while, for ou foreach.
![Page 29: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/29.jpg)
ContinueUtilisé dans les boucles
Arrête l’itération de la boucle actuelle est passe à la suivante
![Page 30: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/30.jpg)
QUESTIONS ?
![Page 31: Bases de php - partie 2](https://reader033.vdocuments.net/reader033/viewer/2022052906/558c84f9d8b42ad6768b45cf/html5/thumbnails/31.jpg)
QUELQUES EXERCICESAPPRENDRE LES BOUCLES DU CÔTÉ OBSCUR