<分区>
Possible Duplicate:
are arrays in php passed by value or by reference?
我听说 PHP 可以选择如何分配数组,这取决于数组的大小。 它可以通过复制值(作为任何标量类型)或通过引用来分配。
PHP 始终通过复制值将数组分配给变量,如手册中所述。
也可以通过引用赋值。 ?
<?php $a = array(1,2,3); ?>
<分区>
Possible Duplicate:
are arrays in php passed by value or by reference?
我听说 PHP 可以选择如何分配数组,这取决于数组的大小。 它可以通过复制值(作为任何标量类型)或通过引用来分配。
PHP 始终通过复制值将数组分配给变量,如手册中所述。
也可以通过引用赋值。 ?
<?php $a = array(1,2,3); ?>
最佳答案
将数组变量分配给其他变量时,可以通过引用分配数组:
// By value...
$a = array(1,2,3);
$b = $a;
array_push($a, 5);
print_r($b);
// $b is not a reference to $a
Array
(
[0] => 1
[1] => 2
[2] => 3
)
// By Reference
$a = array(1,2,3);
$b = &$a; // Here we assign by reference
array_push($a, 5);
print_r($b);
// $b is a reference to $a and gets the new value (3 => 5)
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 5
)
关于php数组通过复制值或引用分配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8897749/