list

(PHP 3, PHP 4, PHP 5 )

list --  Priradiť premenné ako keby boli pole

Popis

void list ( mixed ...)

Podobne ako array(), ani toto nie je v podstate funkcia, ale jazyková konštrukcia. list() sa používa na priradenie zoznamu premenných v jednej operácii.

Poznámka: list() funguje iba s číselnými poliami a preberá číselné indexy od 0.

Príklad 1. list() príklady

<?php

$info
= array('kava', 'hneda', 'kofein');

// Vypis vsetkych premennych
list($drink, $farba, $sila) = $info;
echo
"$drink je $farba a $sila ho robi specialnym.\n";

// Vypis niektorych z nich
list($drink, , $sila) = $info;
echo
"$drink ma $sila.\n";

// Alebo ponechame iba tretiu
list( , , $sila) = $info;
echo
"Potrebujem $sila!\n";

?>

Príklad 2. Príklad použitia list()

<table>
<tr>
  <th>Meno zamenstanca</th>
  <th>Plat</th>
</tr>

<?php

$vysledok
= mysql_query ("SELECT id, name, salary FROM employees", $conn);
while (list(
$id, $name, $salary) = mysql_fetch_row($vysledok)) {
    echo
" <tr>\n" .
           
"  <td><a href=\"info.php?id=$id\">$name</a></td>\n".
           
"  <td>$salary</td>\n".
           
" </tr>\n";
}

?>

</table>

Varovanie

list() priraďuje hodnoty počínajúc parametrom najviac vľavo. Ak používate prosté premenné, nerobte si kvôli tomu starosti. Ale ak používate polia s indexami, od ktorých očakávate rovnaké poradie indexov v poli ako ste napísali v list() z ľava do prava; tak to nie je. Je priradené v opačnom poradí.

Príklad 3. Použitie list() s indexami poľa

<?php

$info
= array('kava', 'hneda', 'kofein');

list(
$a[0], $a[1], $a[2]) = $info;

var_dump($a);

?>

Vracia následujúci výstup (pozor na poradie prvkov porovnávané v takom poradí, v akom boli napísané v list() syntaxe):

array(3) {
  [2]=>
  string(8) "kofein"
  [1]=>
  string(5) "hneda"
  [0]=>
  string(6) "kava"
}

Tiež pozri each(), array() a extract().