PHP array_replace() 函數
實例
使用第二個數組($a2)的值替換第一個數組($a1)的值:
<?php
$a1=array("red","green");
$a2=array("blue","yellow");
print_r(array_replace($a1,$a2));
?>
$a1=array("red","green");
$a2=array("blue","yellow");
print_r(array_replace($a1,$a2));
?>
運行實例»
定義和用法
array_replace() 函數使用後面數組的值替換第一個數組的值。
提示:您可以向函數傳遞一個數組,或者多個數組。
如果一個鍵存在於第一個數組array1 同時也存在於第二個數組array2,第一個數組array1 中的值將被第二個數組array2 中的值替換。 如果一個鍵僅存在於第一個數組array1,它將保持不變。 (詳見下面的實例1)
如果一個鍵存在於第二個數組array2,但是不存在於第一個數組array1,則會在第一個數組array1 中創建這個元素。 (詳見下面的實例2)
如果傳遞了多個替換數組,它們將被按順序依次處理,後面數組的值將覆蓋之前數組的值。 (詳見下面的實例3)
提示:請使用array_replace_recursive()來遞歸地使用後面數組的值替換第一個數組的值。
語法
array_replace( array1,array2,array3... )
参数 | 描述 |
---|---|
array1 | 必需。指定一个数组。 |
array2 | 可选。指定一个要替换 array1 的值的数组。 |
array3,... | 可选。指定多个要替换 array1 和 array2, ... 的值的数组。后面数组的值将覆盖之前数组的值。 |
技術細節
返回值: | 返回被替換的數組,如果發生錯誤則返回NULL。 |
---|---|
PHP 版本: | 5.3.0+ |
更多實例
實例1
如果一個鍵存在於第一個數組array1 同時也存在於第二個數組array2,第一個數組array1 中的值將被第二個數組array2 中的值替換。 如果一個鍵僅存在於第一個數組array1,它將保持不變。
<?php
$a1=array("a"=>"red","b"=>"green");
$a2=array("a"=>"orange","burgundy");
print_r(array_replace($a1,$a2));
?>
$a1=array("a"=>"red","b"=>"green");
$a2=array("a"=>"orange","burgundy");
print_r(array_replace($a1,$a2));
?>
運行實例»
實例2
如果一個鍵存在於第二個數組array2,但是不存在於第一個數組array1,則會在第一個數組array1 中創建這個元素。
<?php
$a1=array("a"=>"red","green");
$a2=array("a"=>"orange","b"=>"burgundy");
print_r(array_replace($a1,$a2));
?>
$a1=array("a"=>"red","green");
$a2=array("a"=>"orange","b"=>"burgundy");
print_r(array_replace($a1,$a2));
?>
運行實例»
實例3
使用三個數組- 最後一個數組($a3)將覆蓋之前數組($a1 和$a2):
<?php
$a1=array("red","green");
$a2=array("blue","yellow");
$a3=array("orange","burgundy");
print_r(array_replace($a1,$a2,$a3));
?>
$a1=array("red","green");
$a2=array("blue","yellow");
$a3=array("orange","burgundy");
print_r(array_replace($a1,$a2,$a3));
?>
運行實例»
實例4
使用數值鍵- 如果一個鍵存在於第二個數組array2,但是不存在於第一個數組array1,則會在第一個數組array1 中創建這個元素:
<?php
$a1=array("red","green","blue","yellow");
$a2=array(0=>"orange",3=>"burgundy");
print_r(array_replace($a1,$a2));
?>
$a1=array("red","green","blue","yellow");
$a2=array(0=>"orange",3=>"burgundy");
print_r(array_replace($a1,$a2));
?>
運行實例»
完整的PHP Array參考手冊