Ho scritto un pezzo di codice tutorial e mi sono imbattuto in qualcosa di molto strano dopo averlo eseguito.E commerciale anteposto alla fine dell'array var_dump
L'estensione Chrome Var Dumpling non ha visto l'ultima voce nell'array perché è stata aggiunta una e commerciale al tipo di valore.
ho provato con questo pezzo di codice:
$alphabet = array('a', 'b', 'c');
foreach ($alphabet as &$letter) {
$letter .= 'a';
}
var_dump($alphabet);
Il risultato della var_dump è:
array(3) {
[0]=>
string(2) "aa"
[1]=>
string(2) "ba"
[2]=>
&string(2) "ca"
}
Si può vedere che l'ultima voce è &string(2) "ca"
invece di quello che mi sarei aspettato string(2) "ca"
. Non c'è alcun problema nella parte logica di questo, posso chiamare $alphabet[2]
e restituirebbe il valore dell'ultima voce ca
.
Quello che mi chiedo è, questa convenzione o qualche strana intesa in PHP?