當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。