在PHP 8中,引用赋值时自动创建的数组元素或者对象属性的顺序和PHP 7版本相比发生了变化。下面举例说明。
【例6.18】
<?php
$array = [];
$array["a"] =& $array["b"];
$array["b"] = 1;
var_dump($array);
?>
在PHP 8版本中,运行结果如图6-20所示。可见,PHP 8产生的数组:[“b” => 1,”a” => 1]。
在PHP 7版本中,运行结果如图6-21所示。可见,PHP 7产生的数组:[“a” => 1,”b” => 1]。