list
(PHP 3, PHP 4, PHP 5 )
list --
értéket rendel a felsorolt változókhoz
Leírás
void
list ( mixed ... )
Az array()-hoz hasonlóan a list() sem
valódi függvény, hanem nyelvi építőelem. A list()
a több változó érték-hozzárendelésére szolgál egy műveleten belül.
Megjegyzés:
A list() csak numerikus indexelésű tömbökön működik
helyesen, és akkor is csak, ha az indexelés 0-tól kezdődik.
Példa 1. list() példák
<?php
$info = array('kávé', 'barna', 'koffein');
// az összes változó kiírása list($ital, $szin, $ero) = $info; print "A $ital $szin és a $ero teszi különlegessé.\n";
// csak néhány változó kiírása list($ital, , $ero) = $info; print "A {$ital}ban van $ero.\n";
// vagy a harmadik, legutols= kirása list( , , $ero) = $info; print "Kérek {$power}t!\n";
?>
|
|
Példa 2. Példa a list() használatára
<table> <tr> <th>Alkalmazott neve</th> <th>fizetése</th> </tr>
<?php
$result = mysql_query ("SELECT id, nev, fizetes FROM alkalmazottak",$conn); while (list ($id, $nev, $fizetes) = mysql_fetch_row ($result)) { print (" <tr>\n". " <td><a href=\"info.php?id=$id\">$nev</a></td>\n". " <td>$fizetes</td>\n". " </tr>\n"); }
?>
</table>
|
|
Figyelem |
A list() az értékek hozzárendelését jobbról kezdi el.
Sima változók esetében ez nem okoz különösebb fejtörést, de tömbelemek
esetén általában az az elvárt viselkedés, hogy az elemek felsorolásuk
sorrendjében kerülnek a tömbbe, azaz a list()
paraméterlistájában elfoglalt helyüknek megfelelően balról - jobbra haladva.
Ez azonban nem így van, a hozzárendelés jobbról balra halad:
|
Példa 3. A list() használata indexelt tömbelemekkel
<?php $info = array('kávé', 'fekete', 'koffein'); list($a[0], $a[1], $a[2]) = $info;
var_dump($a);
|
|
A következő kimenetet adja. Vesd össze az elemek tömbbeli sorrendjét a
a
list() paraméterlistájában elfoglalt helyükkel:
array(3) {
[2]=>
string(8) "koffein"
[1]=>
string(5) "fekete"
[0]=>
string(6) "kávé"
} |
Lásd még: each(), extract()
és array()!