最初の配列($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を参照)。
キーがarray2に存在し、array1には存在しない場合、そのキーがarray1に作成されます(下記の例2を参照)。
複数の配列を使用する場合、前の配列の値は後の配列の値で上書きされます(下記の例3を参照)。
チップ: array1の値を、後続の配列の値で再帰的に置き換えるには、 array_replace_recursive()を使用します。
array_replace(array1,array2,array3...)
パラメータ | 説明 |
---|---|
array1 | 必須。配列を指定する |
array2 | 任意。array1の値を置き換える配列を指定する |
array3,... | 任意。array1 と array2 などで置き換えられた値を、更に置換するための配列を指定する。 後の配列の値は、前の配列の値を上書きする |
返り値: | 置き換えられた配列を返します。エラーが発生した場合はNULLを返します |
---|---|
PHP バージョン: | 5.3.0+ |
array1のキーがarray2に存在する場合と、キーがarray1のみに存在する場合:
<?php
$a1=array("a"=>"red","b"=>"green");
$a2=array("a"=>"orange","burgundy");
print_r(array_replace($a1,$a2));
?>
例の実行 »
キーが配列2に存在し、array1に存在しない場合:
<?php
$a1=array("a"=>"red","green");
$a2=array("a"=>"orange","b"=>"burgundy");
print_r(array_replace($a1,$a2));
?>
例の実行 »
3つの配列を使う - 最後の配列($a3)は前の配列($a1と$a2)を上書きします:
<?php
$a1=array("red","green");
$a2=array("blue","yellow");
$a3=array("orange","burgundy");
print_r(array_replace($a1,$a2,$a3));
?>
例の実行 »
数値キーを使用する - キーがarray2に存在し、array1に存在しない場合:
<?php
$a1=array("red","green","blue","yellow");
$a2=array(0=>"orange",3=>"burgundy");
print_r(array_replace($a1,$a2));
?>
例の実行 »