当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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

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

程序1

<?php 
  
// 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

<?php 
  
// 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
)

参考:
http://php.net/manual/en/function.array-replace.php



相关用法


注:本文由纯净天空筛选整理自HGaur大神的英文原创作品 PHP | array_replace() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。