array_replace()+php,PHP array_replace()用法及代码示例

本文详细介绍了PHP内置函数array_replace()的工作原理和用法。该函数通过替换或添加值来更新数组,根据传入数组的顺序处理键值。在示例中,展示了如何使用该函数替换或添加元素到目标数组中,包括对已存在键的处理和新键的添加。

array_replace()函数是PHP中的内置函数,它使用以逗号(,)分隔的数组列表作为参数,并替换第一个数组的所有其他数组中具有相同键的值。替换是根据以下规则完成的:

如果第一个数组中的键也存在于第二个数组中,则将其在第一个数组中的值替换为第二个数组中该键的值。

如果第二个数组中的键在第一个数组中不存在,则在第一个数组中创建它,并将其值从第二个数组复制到第一个数组中。

如果任何后续数组中都不存在第一个数组中的键,则该键的值在第一个数组中保持不变。

数组按传递给函数的顺序进行处理,因此,如果第一个数组的键存在于多个数组中,则其值将被最后一次出现的数组的值替换。

用法:

array array_replace ( $array1, $array2, ...., $arrayn )

参数:此函数接受数组列表作为参数。该函数的第一个参数是要替换的数组。该函数的其余参数是将其值复制到第一个数组中的数组。

返回值:此函数返回修改参数中的第一个数组后形成的数组。

例子:

Input : $array1 = array("orange", "banana", "apple", "raspberry")

$array2 = array(0 => "pineapple", 4 => "cherry")

$array3 = array(0 => "grape")

array_replace($array1, $array2, $array3)

Output : Array

(

[0] => grape

[1] => banana

[2] => apple

[3] => raspberry

[4] => cherry

)

Input : $array1 = array("aim", "plan", "vision", "clarity")

$array2 = array("word1" => "loneliness", "word2" => "happiness")

$array3 = array(0 => "solitude")

array_replace($array1, $array2, $array3)

Output : Array

(

[0] => solitude

[1] => plan

[2] => vision

[3] => clarity

[word1] => loneliness

[word2] => happiness

)

在第一个示例中,键0在两个数组中都存在,因此其值被替换为最后出现的那个值,即葡萄,而键4在第二个数组中存在,因此其值也被替换。

在第二个示例中, key 0在第三个数组中存在,因此其值在第一个数组中被替换。按键word1和word2在第一个数组中不存在,因此它们与它们的值一起添加到第一个数组中。

以下示例程序旨在说明PHP中的array_replace()函数:

程序1:

// Array to be replaced

$array1 = array("orange", "banana", "apple",

"raspberry");

// arrays that will replace the values

// in the first array

$array2 = array(0 => "pineapple", 4 => "cherry");

$array3 = array(0 => "grape");

$resArr = array_replace($array1, $array2,

$array3);

print_r($resArr);

?>

输出:

Array

(

[0] => grape

[1] => banana

[2] => apple

[3] => raspberry

[4] => cherry

)

程序2:

// Array to be replaced

$array1 = array("aim", "plan", "vision", "clarity");

// arrays that will replace the values

// in the first array

$array2 = array("word1" => "loneliness",

"word2" => "happiness");

$array3 = array(0 => "solitude");

$resArr = array_replace($array1, $array2,

$array3);

print_r($resArr);

?>

输出:

Array

(

[0] => solitude

[1] => plan

[2] => vision

[3] => clarity

[word1] => loneliness

[word2] => happiness

)

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值