list
(PHP 4, PHP 5)
list — Priradiť premenné ako keby boli pole
Popis
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.
Note: list() funguje iba s číselnými poliami a preberá číselné indexy od 0.
Example#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";
?>
Example#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>
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í.
Example#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" }