PHP array_replace()関数
例
最初の配列($ a1)の値を2番目の配列($ a2)の値に置き換えます。
<?php
$a1=array("red","green");
$a2=array("blue","yellow");
print_r(array_replace($a1,$a2));
?>
定義と使用法
array_replace()関数は、最初の配列の値を後続の配列の値に置き換えます。
ヒント: 1つの配列を関数に割り当てることも、必要な数だけ割り当てることができます。
array1のキーがarray2に存在する場合、array1の値はarray2の値に置き換えられます。キーがarray1にのみ存在する場合は、そのままになります(以下の例1を参照)。
キーがarray1ではなくarray2に存在する場合、そのキーはarray1に作成されます(以下の例2を参照)。
複数の配列が使用されている場合、後の配列の値が前の配列を上書きします(以下の例3を参照)。
ヒント:array_replace_recursive()を使用して、array1の値を後続の配列の値に再帰的に置き換えます。
構文
array_replace(array1, array2, array3, ...)
パラメータ値
Parameter | Description |
---|---|
array1 | Required. Specifies an array |
array2 | Optional. Specifies an array which will replace the values of array1 |
array3,... | Optional. Specifies more arrays to replace the values of array1 and array2, etc. Values from later arrays will overwrite the previous ones. |
技術的な詳細
戻り値: | 置き換えられた配列を返します。エラーが発生した場合はNULLを返します |
---|---|
PHPバージョン: | 5.3.0+ |
その他の例
例1
array1のキーがarray2に存在し、キーがarray1にのみ存在する場合。
<?php
$a1=array("a"=>"red","b"=>"green");
$a2=array("a"=>"orange","burgundy");
print_r(array_replace($a1,$a2));
?>
例2
キーがarray2に存在し、array1には存在しない場合。
<?php
$a1=array("a"=>"red","green");
$a2=array("a"=>"orange","b"=>"burgundy");
print_r(array_replace($a1,$a2));
?>
例3
3つの配列を使用する-最後の配列($ a3)は、前の配列($ a1と$ a2)を上書きします。
<?php
$a1=array("red","green");
$a2=array("blue","yellow");
$a3=array("orange","burgundy");
print_r(array_replace($a1,$a2,$a3));
?>
例4
数値キーの使用-キーがarray2に存在し、array1には存在しない場合。
<?php
$a1=array("red","green","blue","yellow");
$a2=array(0=>"orange",3=>"burgundy");
print_r(array_replace($a1,$a2));
?>
❮PHP配列リファレンス