PHP array_replace_recursive() 関数

❮ PHP 配列リファレンス

最初の配列の値を2番目の配列の値で再帰的に置き換えます:

<?php
$a1=array("a"=>array("red"),"b"=>array("green","blue"),);
$a2=array("a"=>array("yellow"),"b"=>array("black"));
print_r(array_replace_recursive($a1,$a2));
?>
例の実行 »

定義と用法

array_replace_recursive() 関数は、最初の配列の値を、後続の配列の値で置き換えます。

チップ: 1つまたは複数の配列を関数に割り当てることができます。

array1のキーが、array2に存在する場合、array1の値はarray2の値に置き換えられます。 キーがarray1にしか存在しない場合は、そのままで何も変わりません キーがarray2に存在し、array1には存在しない場合、そのキーがarray1に作成されます。 複数の配列を使用する場合、前の配列の値は後の配列の値で上書きされます。

注: 配列ごとにキーを指定しない場合、この関数は、 array_replace() 関数とまったく同じように動作します。


構文

array_replace_recursive(array1,array2,array3...)

パラメータ 説明
array1 必須。配列を指定する
array2 任意。array1の値を置き換える配列を指定する
array3,... 任意。array1 array2 などで置き換えられた値を、更に置換するための配列を指定する。 後の配列の値は、前の配列の値を上書きする

技術内容
返り値: 置き換えられた配列を返します。エラーが発生した場合はNULLを返します
PHP バージョン: 5.3.0+

その他の例

例 1

複数の配列:

<?php
$a1=array("a"=>array("red"),"b"=>array("green","blue"));
$a2=array("a"=>array("yellow"),"b"=>array("black"));
$a3=array("a"=>array("orange"),"b"=>array("burgundy"));
print_r(array_replace_recursive($a1,$a2,$a3));
?>
例の実行 »

例 2

array_replace() と array_replace_recursive()の違い:

<?php
$a1=array("a"=>array("red"),"b"=>array("green","blue"),);
$a2=array("a"=>array("yellow"),"b"=>array("black"));

$result=array_replace_recursive($a1,$a2);
print_r($result);

$result=array_replace($a1,$a2);
print_r($result);
?>
例の実行 »

❮ PHP 配列リファレンス