listAssegna valori a delle variabili come se fossero un array
&reftitle.description;
arraylistmixedvar1mixed...
Come array, questa non è in realtà una funzione,
bensì un costrutto del linguaggio. list è usata per
assegnare valori ad una lista di variabili in una sola operazione.
list funziona solo su array numerici e si aspetta
che gli indici numerici partano da 0.
In PHP 5, list assegna i valori partendo dal
parametro più a destra. In PHP 7, list comincia dal
parametro più a sinistra.
Se si stanno usando variabili semplici, non ci si deve preoccupare di questo comportamento. Ma
se si stanno usando array con indici ci si aspetta che l'ordine degli
indici nell'array sia lo stesso scritto nella funzione list
da sinitra a destra; non è il caso in PHP 5, dal momento che sono assegnati
in ordine inverso.
In generale, è sconsigliato fare affidamento su uno specifico ordine
di operazioni, dal momento che questo può cambiare in futuro.
La modifica dell'array durante l'esecuzione di list (es.
usando list($a, $b) = $b ha un comportamento indefinito.
&reftitle.parameters;
var1
Una variabile.
&reftitle.returnvalues;
Restituisce l'array assegnato.
&reftitle.changelog;
&Version;&Description;7.0.0
L'ordine di esecuzione delle operazioni di assegnazione è
cambiato.
7.0.0
Le espressioni list non possono più essere completamente
vuote.
7.0.0
Le stringhe non possono più essere spacchettate.
&reftitle.examples;
esempio di list
]]>
Esempio di uso di list
\n");
}
?>
]]>
Utilizzare list annidate
]]>
Utilizzo di list con gli indici
]]>
Restituisce il seguente risultato (si noti l'ordine degli elementi rispetto
all'ordine con cui sono stati scritti nella sintassi di list).
&example.outputs.7;
string(8) "caffeina"
[1]=>
string(4) "nero"
[0]=>
string(5) "caffè"
}
]]>
&example.outputs.5;
string(8) "caffeine"
[1]=>
string(5) "brown"
[0]=>
string(6) "coffee"
}
]]>
list e ordine delle definizioni dell'indice
L'ordine con il quale sono definiti gli indici dell'array da consumare da parte di
list è irrilevante.
'a', 'foo' => 'b', 0 => 'c');
$foo[1] = 'd';
list($x, $y, $z) = $foo;
var_dump($foo, $x, $y, $z);
]]>
Restituisce il seguente risultato (si noti l'ordine degli elementi in rapporto a
quello con cui sono scritti nella sintassi di list):
string(1) "a"
["foo"]=>
string(1) "b"
[0]=>
string(1) "c"
[1]=>
string(1) "d"
}
string(1) "c"
string(1) "d"
string(1) "a"
]]>
&reftitle.seealso;
eacharrayextract