我有一个$x非零数元素的数组.我想创建另一个$y等于的array()$x.然后我想做一些操作而$y不会导致任何改变$x.我可以这样创建$y:
$y = $x;
Run Code Online (Sandbox Code Playgroud)
换句话说,如果我修改$y以上面显示的方式创建,我会改变值$x吗?
Fel*_*ing 10
试一试吧:
$a = array(0,1,2);
$b = $a;
$b[0] = 5;
print_r($a);
print_r($b);
Run Code Online (Sandbox Code Playgroud)
给
Array
(
[0] => 0
[1] => 1
[2] => 2
)
Array
(
[0] => 5
[1] => 1
[2] => 2
)
Run Code Online (Sandbox Code Playgroud)
和文档说:
数组赋值始终涉及值复制.使用引用运算符通过引用复制数组.