PHP Tableau

Un tableau stocke plusieurs valeurs dans une seule variable... Un tableau (array) est donc une variable spéciale qui peut contenir plusieurs valeurs à la fois.

En PHP, il existe 3 sortes de tableaux :

- Tableau indexé : tableau avec un index numérique. Pour accéder aux valeurs d'un tableau indéxé, on utilise une référence qui est un numéro d'index.

- Tableau associatif : tableau avec des clés nommées

- Tableau multidimensionnel : tableau qui contient un ou plusieurs tableaux

Tableau indexé

Il y a deux façons de créer des tableaux indexés: l'indice est attribué automatiquement (index commence toujours à 0) ou l'indice est attribué manuellement comme le montre l'exemple ci-dessous:

<!DOCTYPE html>

<html>

	<head>
		<title>Exemple</title>
		<meta charset="UTF-8" />
	</head>

<body>

<h1>Les tableaux indéxés</h1>

<?php

// ***************************************************************
// Attribution automatique de l'index dans la déclaration suivante 
// Automatiquement le premier élément du tableau a pour index 0
// ***************************************************************

$motos = array("Harley","Yamaha","Honda","Kawasaki") ;


// *************************************************************
// Attribution manuelle de l'index dans la déclaration suivante :
// ***************************************************************

$voitures[0] = "Aston martin" ;
$voitures[1] = "Bugatti";
$voitures[2] = "Rolls Royce";


// **********************************************
// affichage du contenu du tableau moto 
// la fonction count renvoie la taille du tableau
// **********************************************

$taille = count($motos);

for($x = 0; $x < $taille; $x++) 
	{
		echo $motos[$x];
		echo "<br/>";
	}

?>

</body>

</html>
Voir

Tableau associatif

Les tableaux associatifs sont des tableaux qui utilisent des clés nommées que vous attribuez arbitrairement

Il y a deux façons de créer des tableaux associatifs comme le montre l'exemple ci-dessous:

<!DOCTYPE html>

<html>

	<head>
		<title>Exemple</title>
		<meta charset="UTF-8" />
	</head>

<body>

<h1>Les tableaux associatifs</h1>

<?php

// ***************************************************
// 1ère méthode de déclaration d'un tableau associatif
// ***************************************************

$point = array("Dad"=>"305", "Sam"=>"1437", "Gilou"=>"1209");


// *****************************************************************************
// 2ème méthode de déclaration d'un tableau associatif équivalente à la première
// *****************************************************************************

$point["Dad"] = "305" ;
$point["Sam"] = "1437" ;
$point["Gilou"] = "1209";


// **********************************************
// affichage du contenu du tableau associatif 
// **********************************************

foreach ( $point as $indice => $valeur )  
	{
		echo "clé : " . $indice . " , contenu = ". $valeur ;
		echo "<br/>";
	}


?>

</body>

</html>
Voir

Tableau multidimensionnel

C'est un tableau qui contient un plusieurs tableaux

Exemple avec un tableau de 2 dimensions :

<!DOCTYPE html>

<html>

	<head>
		<title>Exemple</title>
		<meta charset="UTF-8" />
	</head>

<body>

<h1>Les tableaux multidimensionnels</h1>

<?php

// ***************************************************
// on peut imaginer un tableau à deux entrées 
// la première colonne contient une liste d'article
// la deuxième colonne contient le prix unitaire
// la troisième colonne contient le stock
// chaque ligne est un article
// ***************************************************

$article = array(
				array("biscuits",2.30,710),
				array("chocolat",1.90,250),
				array("noisettes",2.70,251),
				array("sucre",2.0,370),
				array("oeufs",0.24,100),
				array("farine",0.95,150),
			);


// *****************************************************************************
// affichage ci-dessous (un peu brutal !!!)
// il est préférable d'utiliser des boucles imbriquées et de faire une présentation en table  
// *****************************************************************************

echo $article[0][0] . ": PU: " . $article[0][1] . "€, stock: ".$article[0][2]. "<br/>";
echo $article[1][0] . ": PU: " . $article[1][1] . "€, stock: ".$article[1][2]. "<br/>";
echo $article[2][0] . ": PU: " . $article[2][1] . "€, stock: ".$article[2][2]. "<br/>";
echo $article[3][0] . ": PU: " . $article[3][1] . "€, stock: ".$article[3][2]. "<br/>";
echo $article[4][0] . ": PU: " . $article[4][1] . "€, stock: ".$article[4][2]. "<br/>";
echo $article[5][0] . ": PU: " . $article[5][1] . "€, stock: ".$article[5][2]. "<br/>";


// *****************************************************************************
// affichage "mieux"! 
// *****************************************************************************


echo "<table border='1' cellpadding='5'>" ;

for ($ligne=0 ; $ligne < count($article) ; $ligne++)
{
		echo "<tr>";
		for ($colonne=0 ; $colonne <3 ; $colonne++)
		{
			echo "<td>" ;	
			echo $article[$ligne][$colonne] ;
			echo "</td>" ;	
		}
		echo "</tr>";

}

echo "</table>";


?>

</body>

</html>
Voir