最新的Web開發教程
 

PHP array_replace_recursive() Function

<PHP陣列參考

替換與來自第二陣列遞歸值的第一陣列的值:

<?php
$a1=array("a"=>array("red"),"b"=>array("green","blue"),);
$a2=array("a"=>array("yellow"),"b"=>array("black"));
print_r(array_replace_recursive($a1,$a2));
?>
運行示例»

定義和用法

所述array_replace_recursive()函數從遞歸以下陣列替換的值在第一數組的值。

Tip:您可以在一個陣列分配給功能,或者像你一樣多。

如果在array1的關鍵在數組2存在,在array1值將由數組2的值來代替。 如果密鑰只有在陣列1存在,它會保持原樣。 如果鍵數組2,而不是在陣列1存在,它會在陣列1被創建。 如果使用多個陣列,從後來的陣列值將覆蓋以前的。

注意:如果你不指定為每個陣列的一個關鍵,這個函數的行為完全一樣array_replace()函數。


句法

array_replace_recursive( array1,array2,array3... )

參數 描述
array1 需要。 指定的數組
array2 可選的。 指定了一個陣列,其將取代ARRAY1的值
array3,... 可選的。 指定更多陣列來代替數組1數組2等的從後列的值將覆蓋原有的值。

技術細節

返回值: 如果發生錯誤,則返回的替換陣列,或NULL
PHP版本: 5.3.0+

更多示例

實施例1

多個陣列:

<?php
$a1=array("a"=>array("red"),"b"=>array("green","blue"));
$a2=array("a"=>array("yellow"),"b"=>array("black"));
$a3=array("a"=>array("orange"),"b"=>array("burgundy"));
print_r(array_replace_recursive($a1,$a2,$a3));
?>
運行示例»

實施例2

之間的差異array_replace()array_replace_recursive()

<?php
$a1=array("a"=>array("red"),"b"=>array("green","blue"),);
$a2=array("a"=>array("yellow"),"b"=>array("black"));

$result=array_replace_recursive($a1,$a2);
print_r($result);

$result=array_replace($a1,$a2);
print_r($result);
?>
運行示例»

<PHP陣列參考