是否有一个函数可以将一个PHP数组复制到另一个数组?
我已经被烧毁了几次试图复制PHP数组。我想将对象内定义的数组复制到对象外部的全局数组。
是否有一个函数可以将一个PHP数组复制到另一个数组?
我已经被烧毁了几次试图复制PHP数组。我想将对象内定义的数组复制到对象外部的全局数组。
当前回答
我很久以前就知道这一点,但这对我来说很有效。
$copied_array = array_slice($original_array,0,count($original_array));
其他回答
简单,使深度复制打破所有链接
$new=unserialize(serialize($old));
<?php
function arrayCopy( array $array ) {
$result = array();
foreach( $array as $key => $val ) {
if( is_array( $val ) ) {
$result[$key] = arrayCopy( $val );
} elseif ( is_object( $val ) ) {
$result[$key] = clone $val;
} else {
$result[$key] = $val;
}
}
return $result;
}
?>
我发现最安全、最便宜的方法是:
<?php
$b = array_values($a);
这也有重新索引数组的好处。
这将不会像预期的那样工作在关联数组(哈希)上,但也不是以前的大多数答案。
$arr_one_copy = array_combine(array_keys($arr_one), $arr_one);
只是再发布一个解决方案;)
我很久以前就知道这一点,但这对我来说很有效。
$copied_array = array_slice($original_array,0,count($original_array));