Ich schrieb ein Stück Tutorial-Code und lief in etwas ziemlich seltsam nach dem Ausführen.Ampersand am Ende des Arrays vorangestellt var_dump
Meine Chrome-Erweiterung Var Dumpling konnte den letzten Eintrag im Array nicht sehen, da ein Ampersand an den Typ des Werts angehängt wurde.
ich mit diesem Stück Code getestet:
$alphabet = array('a', 'b', 'c');
foreach ($alphabet as &$letter) {
$letter .= 'a';
}
var_dump($alphabet);
Das Ergebnis der var_dump ist:
array(3) {
[0]=>
string(2) "aa"
[1]=>
string(2) "ba"
[2]=>
&string(2) "ca"
}
Sie, dass der letzte Eintrag &string(2) "ca"
ist zu sehen, statt dem, was ich string(2) "ca"
erwarten würde. Es gibt kein Problem im Logikteil, ich kann $alphabet[2]
aufrufen und es würde den Wert des letzten Eintrags ca
zurückgeben.
Was ich frage mich ist, ist diese Konvention oder ein seltsames hickup in PHP?