Manuel PHP
Précédent |  | Suivant

# list

(PHP 3, PHP 4, PHP 5 )

list -- Transforme une liste de variables en tableau

## Description

void list ( mixed varname, mixed ...)

Tout comme array(), list() n'est pas une véritable fonction, mais un élément de langage, qui permet de rassembler les variables `varname`, `...` sous forme de tableuau, pour les assigner en une seule ligne.

> Note : list() fonctionne uniquement avec des tableaux à indexation numérique, et suppose que l'indexation commence à 0.

Exemple 1. Exemple avec list()

`<?php $info = array('café', 'noir', 'cafeine'); // Liste de toutes les variables list($drink, $color, $power) = $info; echo "$drink est $color et la $power le rend particulier.\n"; // Liste de certaines variables list($drink, , $power) = $info; echo "$drink contient de la $power.\n"; // Ou bien, n'utilisons que le troisième list( , , $power) = $info; echo "J'ai besoin de $power!\n"; ?>`

Exemple 2. Exemple avec list() et MySQL

`<table> <tr> <th>Nom de l'employé</th> <th>Salaire</th> </tr> <?php $resultat = mysql_query ("SELECT id, nom, salaire FROM employes",$conn); while (list ($id, $nom, $salaire) = mysql_fetch_row ($resultat)) { echo " <tr>\n". " <td><a href=\"info.php?id=$id\">$nom</a></td>\n". " <td>$salaire</td>\n". " </tr>\n"; } ?> </table>`

Avertissement
list() assigne les valeurs en commençant par la valeur la plus à droite. Si vous utiliser ces variables, ce ne sera pas un problème. Mais si vous utilisez des tableaux, vous serez surpris de voir que list() les affecte de droite à gauche.

Exemple 3. Exemple avec list() en tenant compte de l'ordre

`<?php $info = array('café', 'noir', 'cafeine'); list($a[0], $a[1], $a[2]) = $info; var_dump($a); ?>`

Cet exemple donne le résultat suivant (notez l'ordre d'affichage des éléments, en comparaison avec l'ordre dans lequel ils ont été écrits dans la syntaxe de list()) :

    array(3) {
      [2]=>
      string(8) "cafeine"
      [1]=>
      string(5) "noir"
      [0]=>
      string(6) "café"
    }

Voir aussi each(), array() et extract().

Précédent | Sommaire | Suivant
ksort | Niveau supérieur | natcasesort