论坛上有报php7中仍然存在cow问题的bug
$a = array(1,2,3); $b = array(1,2,3); $a[1] = "Long"; $b[1] = "time"; $x =& $b[1]; // 引用$b的一个元素,如果是直接引用$b 不会出错 $c = $b; // 还是赋值。但是,这回真的还是按值拷贝吗? $c[1] = "no"; print '$a='; print_r($a); print '$b='; print_r($b); // bug print '$c='; print_r($c); unset($x); // 不再引用数组元素。 unset($b); // 删除$b,减少一个引用。 $d = $c; // 还是赋值。现在又是怎么拷贝呢? $d[1] = "see"; print '$c='; print_r($c); // $c和$d不影响。 print '$d='; print_r($d); //正常的拷贝
试了一下,还真存在问题。有兴趣的同学可以打印结果看下