Этот код
<?php
$a = 10;
$arr1 = array(&$a);
$arr1[0] = 20;
echo $a; echo "\n";
$arr2 = $arr1;
$arr2[0] = 30;
echo $a;
производит
20
30
Очевидно, что элементы ссылочного массива "сохранены", что может привести, например, к некоторому интересному / странному поведению, например
<?php
function f($arr) {
$arr[0] = 20;
}
$val = 10;
$a = array(&$val);
f($a);
echo $a[0];
?>
1010 * Вывод *
20
Мой вопрос: для чего он нужен, где он задокументирован (кроме комментария пользователя по адресу http://www.php.net/manual/en/language.types.array.php#50036) и самого исходного кода Zend Engine?