interprétation tableau avec passage par reference
Bonjour à tous,
je viens à votre rencontre, car je n'arrive pas à comprendre la portion de code ci-dessous.
Ce code n'a aucun but en soi, je ne cherche pas à le faire fonctionner dans un script mais à comprendre l'interprétation faite par le moteur PHP.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
$a = array(1,2,3);
foreach($a as $k => &$v) { }
foreach($a as $k => $v) { }
print_r($a);
Array
(
[0] => 1
[1] => 2
[2] => 2
)
// 1,2,2 et non 1,2,3 alors qu'aucune action dans le foreach n'est faite |
Je comprends bien que la référence joue un rôle dans le changement des valeurs du tableau, mais je ne vois pas comment, pourriez-vous m'expliquer ce qu'il se passe.
Merci d'avance pour votre explication.