PHP 7 和 PHP 5 foreach问题

$arr = array(0,1,2,3,4,5);
$ref = &$arr;
foreach($arr as $value){
    $arr = array();
    echo $value;
}

在 PHP7.0 中, 输出 012345, 而在 PHP 5 中 输出 0. PHP7.0 提及到 foreach 改变的有三点.

  1. foreach 不再改变内部数组指针.

  2. foreach 通过值遍历时,操作的值为数组的副本

  3. foreach 通过引用遍历时,有更好的迭代特性

看到第二点有点懵, 我看一些资料都说 PHP 5 在 foreach 是操作数组副本的, 那么官方手册写这句话有什么含义还是有所变化? 为什么会导致 PHP7.0 和 PHP 5 的结果截然不同?