I found a snippet of code in php documentation that I don't understand. I really don't understand if it is a php failure or a shortcoming of mine.
Here the code:
$arr = array('a'=>'first', 'b'=>'second', 'c'=>'third');
foreach ($arr as &$a); // do nothing. maybe?
foreach ($arr as $a);  // do nothing. maybe?
print_r($arr);
?>
Output:
Array
(
    [a] => first
    [b] => second
    [c] => second
)
Add 'unset($a)' between the foreachs to obtain the 'correct' output:
Array
(
    [a] => first
    [b] => second
    [c] => third
)
link: http://php.net/manual/en/language.references.php
Why this behavior? Thanks in advance
 
    