Date post: | 26-Jun-2015 |
Category: |
Internet |
Upload: | regis-lutter |
View: | 157 times |
Download: | 0 times |
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
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’);
Tableaux indexésEléments repérés par un index
Index toujours unique
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]
Tableaux indexés
On peut directement écrire dans une case :
$tableau[0] = 24312;
$tableau[10] = 32212;
et également lire :
echo $tableau[10]; // Affiche 32212
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
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;
Tableaux associatifsEvite de passer par un numéro pour l’index
Utilise une string en tant que clé (index)
Tableaux associatifsOn utilise toujours la fonction array() pour les créer
On assigne les clés et éléments en les séparant par => :
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’’;
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
Tableau multidimensionnelUn tableau peut contenir un autre tableau en valeur = matrice
Tableau multidimensionnel
Création d’un tableau multidimensionnel
$matrice[x][y]
Tableau multidimensionnelOn peut toujours créer des tableaux multidimensionnels avec la fonction array() :
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){}
Boucle while
Correspond à « tant que »
Permet d’exécuter des instructions « tant que » la condition est remplie
Boucle whileExemple de code
Boucle whilePeut s’écrire avec do{}while(), le code est alors exécuté au moins 1 fois
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
Boucle for
Boucle forExemple de code
Boucle foreach
Permet de parcourir les tableaux
Deux syntaxes :
foreach($tableau as $element){ //Instructions }
foreach($tableau as $cle=>$element){ //Instructions }
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 }
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 }
Boucle foreach
Boucle foreach et références
Il est possible d’utiliser les références pour modifier directement une valeur
à partir de PHP5
Instructions d’arrêt
Les instructions permettent de sauter ou d’arrêter le déroulement d’une boucle :
break;
continue;
BreakCette instruction permet de sortir d’une structure conditionnelle telles que switch, while, for ou foreach.
ContinueUtilisé dans les boucles
Arrête l’itération de la boucle actuelle est passe à la suivante
QUESTIONS ?
QUELQUES EXERCICESAPPRENDRE LES BOUCLES DU CÔTÉ OBSCUR