Déclarer, affecter, afficher un tableau
- La fonction array() permet de déclarer un tableau. Il peut être affecté au moment de
la déclaration en indiquant des valeurs séparées par des virgules à l'intérieur des parenthèses de la fonction.
Pour affecter/afficher le contenu d'une cellule, on utilise le nom du tableau suivi de l'indice de la cellule pris entre crochets
- En utilisant le suffixe [x] derrière le nom de la variable, x représente un indice ou un nom associatif.
L'affectation/affichage se fait de façon classique.
Déclarer, affecter, afficher: un tableau classique
Démo
<?php
//déclaration d'un tableau $tab1 avec array()
$tab1 = array();
//affectation de 2 cellules de $tab1
$tab1[0]=3;
$tab1[1]=9;
//affichage du tableau
var_dump($tab1);
//Avec echo
echo $tab1[0],$tab1[1],"<br>";
//déclaration d'un tableau $tab2 avec array() et initialisation
$tab2 = array(4,6,9,15,125,-6,13);
var_dump($tab2);
//Avec echo
echo $tab2[0],$tab2[1],$tab2[2]," etc.<br>";
//déclaration d'un tableau $tab3 avec []
$tab3[0]=2;
$tab3[1]=2;
var_dump($tab3);
//déclaration d'un tableau $tab4 avec []
$tab4[124]="Francisco";
$tab4[269]=69;
var_dump($tab4);
?>
Attention, la déclaration $tab[] renvoie une erreur, il est obligatoire de spécifier un indice de cellule.
Déclarer, affecter, afficher: un tableau associatif
Démo
<?php
//Déclaration et affectation du tableau associatif $membre_45
$membre_45= array("nom"=>"vdv","prenom"=>"louis","adresse"=>"rue php 35");
//Affichage d\'un élément du tableau $membre_45
var_dump($membre_45);
//Avec echo
echo $membre_45["nom"].", ".$membre_45["prenom"]. ", ".$membre_45["adresse"];
?>
Déclarer, affecter, afficher: un tableau multidimensionnel
Démo
<?php
//Déclaration et affectation du tableau multidimensionnel $characters
$characters = array(
array("nom"=>"Bob",
"profession"=>"super héro",
"age"=>30,
"specialite"=>"vision rayons X"),
array("nom"=>"Sally",
"profession"=>"super héro",
"age"=>24,
"specialite"=>"force surnaturelle"),
array("nom"=>"Mary",
"profession"=>"voyou espiègle",
"age"=>63,
"specialite"=>"technologie microscopique")
);
//Affichage
var_dump($characters);
//Avec echo
echo($characters[0]["profession"]);//affiche super héro
?>
Parcourir un tableau
Les boucles permettent de parcourir les tableaux afin d'affecter/afficher des valeurs aux/des tableaux.
La méthode count()
count compte tous les éléments d'un tableau ou d'un objet
Syntaxe
int count ( mixed $array_or_countable)
Pour tous les tableaux, for et while
Démo
<?php
$tab= array(4,5,8,125,8);
for($i=0;$i<count($tab);$i++) {
echo "$tab[$i]"."<br>";
}
?>
Démo
<?php
$tab= array(4,5,8,125,8);
$i=0;
while($i<count($tab)) {
echo "$tab[$i]"."<br>";
$i++;
}
?>
Pour les tableaux associatifs: foreach
Démo
<?php
$membre_45=array("nom"=>"vdv","prenom"=>"louis","adresse"=>"rue php 35");
foreach ( $membre_45 as $key=>$val) {
echo "$key = $val<br>";
}
?>
Pour les tableaux multidimensionnels: foreach
Démo
<?php
$characters = array (
array (
"nom"=>"Bob",
"profession"=>"super héro",
"age"=>30,
"specialite"=>"vision rayons X"
),
array (
"nom"=>"Sally",
"profession"=>"super héro",
"age"=>24,
"specialite"=>"force surnaturelle"
),
array (
"nom"=>"Mary",
"profession"=>"voyou espiègle",
"age"=>63,
"specialite"=>"technologie microscopique"
)
);
foreach ( $characters as $val ){
foreach ( $val as $key=>$final_val ){
echo "$key: $final_val<br>";
}
}
?>
explode(), pour transformer une chaîne en tableau(x)
explode coupe une chaîne en tableaux
Syntaxe
array explode ( string $delimiter , string $string [, int $limit = PHP_INT_MAX ] )
Cette méthode utilise 3 paramètres:
- delimiter, le séparateur
- string, la chaîne initiale.
- limit
- si limit est défini et positif, le tableau retourné contient, au maximum, limit éléments, et le dernier élément contiendra le reste de la chaîne
- si le paramètre limit est négatif, tous les éléments, excepté les -limit derniers éléments sont retournés
- si limit vaut zéro, il est traité comme valant 1
Démo
<?php
$carac="J’ai envie de suggérer l’hypothèse selon laquelle la faible participation des femmes
sur la scène politique serait le simple mépris qu’elles en ont. Desproges.";
$tab=explode(" ",$carac);
for($i=0;$i<count($tab);$i++){
echo $tab[$i]."<br>";
}
?>
implode(), pour transformer un tableau en une chaîne
implode rassemble les éléments d'un tableau en une chaîne
Syntaxe
string implode ( string $glue , array $pieces )
Cette méthode utilise 2 paramètres:
- glue, le séparateur au sein de la nouvelle chaîne
- array, le tableau.
Démo
<?php
$tab=array("Plus","je","connais","les hommes,","plus","j’aime","mon chien.","Plus",
"je","connais","les femmes, moins","j’aime","ma chienne.","Desproges");
$carac=implode(" ",$tab);
echo $carac;
?>