📜  PHP | array_replace()函数

📅  最后修改于: 2022-05-13 01:56:44.002000             🧑  作者: Mango

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出现在第三个数组中,因此它的值在第一个数组中被替换。关键字word1word2不存在于第一个数组中,因此它们与它们的值一起添加到第一个数组中。

下面的程序说明了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