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出现在第二个数组中,因此其值也被替换。
在第二个示例中,键0出现在第三个数组中,因此它的值在第一个数组中被替换。关键字word1和word2不存在于第一个数组中,因此它们与它们的值一起添加到第一个数组中。
下面的程序说明了PHP中的 array_replace()函数:
程序 1 :
"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
)
方案二:
"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
)
参考:
http:// PHP.net/manual/en/函数.array-replace。 PHP