PHP array_replace() 函數(shù)

PHP Array 參考手冊(cè)完整的 PHP Array 參考手冊(cè)

實(shí)例

使用第二個(gè)數(shù)組($a2)的值替換第一個(gè)數(shù)組($a1)的值:

<?php
$a1=array("red","green");
$a2=array("blue","yellow");
print_r(array_replace($a1,$a2));
?>

運(yùn)行實(shí)例 ?

定義和用法

array_replace() 函數(shù)使用后面數(shù)組的值替換第一個(gè)數(shù)組的值。

提示:您可以向函數(shù)傳遞一個(gè)數(shù)組,或者多個(gè)數(shù)組。

如果一個(gè)鍵存在于第一個(gè)數(shù)組 array1 同時(shí)也存在于第二個(gè)數(shù)組 array2,第一個(gè)數(shù)組 array1 中的值將被第二個(gè)數(shù)組 array2 中的值替換。如果一個(gè)鍵僅存在于第一個(gè)數(shù)組 array1,它將保持不變。(詳見(jiàn)下面的實(shí)例 1)

如果一個(gè)鍵存在于第二個(gè)數(shù)組 array2,但是不存在于第一個(gè)數(shù)組 array1,則會(huì)在第一個(gè)數(shù)組 array1 中創(chuàng)建這個(gè)元素。(詳見(jiàn)下面的實(shí)例 2)

如果傳遞了多個(gè)替換數(shù)組,它們將被按順序依次處理,后面數(shù)組的值將覆蓋之前數(shù)組的值。(詳見(jiàn)下面的實(shí)例 3)

提示:請(qǐng)使用 array_replace_recursive() 來(lái)遞歸地使用后面數(shù)組的值替換第一個(gè)數(shù)組的值。


語(yǔ)法

array_replace(array1,array2,array3...)

參數(shù)描述
array1必需。指定一個(gè)數(shù)組。
array2可選。指定一個(gè)要替換 array1 的值的數(shù)組。
array3,...可選。指定多個(gè)要替換 array1array2, ... 的值的數(shù)組。后面數(shù)組的值將覆蓋之前數(shù)組的值。

技術(shù)細(xì)節(jié)

返回值:返回被替換的數(shù)組,如果發(fā)生錯(cuò)誤則返回 NULL。
PHP 版本:5.3.0+


更多實(shí)例

實(shí)例 1

如果一個(gè)鍵存在于第一個(gè)數(shù)組 array1 同時(shí)也存在于第二個(gè)數(shù)組 array2,第一個(gè)數(shù)組 array1 中的值將被第二個(gè)數(shù)組 array2 中的值替換。如果一個(gè)鍵僅存在于第一個(gè)數(shù)組 array1,它將保持不變。

<?php
$a1=array("a"=>"red","b"=>"green");
$a2=array("a"=>"orange","burgundy");
print_r(array_replace($a1,$a2));
?>

運(yùn)行實(shí)例 ?

實(shí)例 2

如果一個(gè)鍵存在于第二個(gè)數(shù)組 array2,但是不存在于第一個(gè)數(shù)組 array1,則會(huì)在第一個(gè)數(shù)組 array1 中創(chuàng)建這個(gè)元素。

<?php
$a1=array("a"=>"red","green");
$a2=array("a"=>"orange","b"=>"burgundy");
print_r(array_replace($a1,$a2));
?>

運(yùn)行實(shí)例 ?

實(shí)例 3

使用三個(gè)數(shù)組 - 最后一個(gè)數(shù)組($a3)將覆蓋之前數(shù)組($a1 和 $a2):

<?php
$a1=array("red","green");
$a2=array("blue","yellow");
$a3=array("orange","burgundy");
print_r(array_replace($a1,$a2,$a3));
?>

運(yùn)行實(shí)例 ?

實(shí)例 4

使用數(shù)值鍵 - 如果一個(gè)鍵存在于第二個(gè)數(shù)組 array2,但是不存在于第一個(gè)數(shù)組 array1,則會(huì)在第一個(gè)數(shù)組 array1 中創(chuàng)建這個(gè)元素:

<?php
$a1=array("red","green","blue","yellow");
$a2=array(0=>"orange",3=>"burgundy");
print_r(array_replace($a1,$a2));
?>

運(yùn)行實(shí)例 ?


PHP Array 參考手冊(cè)完整的 PHP Array 參考手冊(cè)