« PHP:array_filter()関数 | メイン | PHP:sort()関数・rsort()関数 »

2005年11月21日

PHP:array_merge()関数・array_merge_recursive()関数

array_merge()関数:複数の配列を結合します。
※整数値以外の同一キーの要素は、後に指定された値で上書きされます。

array_merge_recursive()関数:複数の配列を再帰的に結合します。
※array_merge()関数とは違い、同一キーの要素は上書きされずに入れ子となった配列に格納されます。

※array_merge()関数・array_merge_recursive()関数はそれぞれ、同一整数キーを持っている配列を結合してもキーは上書きされません。自動的にキーの値が加算され、値が保持されます。

$ARRAY1 = array("PHP", "perl", "SQL", "FLASH"=>"ActionScript");
$ARRAY2 = array("ASP", "JSP", "FLASH"=>"FCS");
$NEWARRAY = array_merge($ARRAY1, $ARRAY2);
print_r($NEWARRAY);

※上記の結果、「Array([0]=>PHP [1]=>perl [2]=>SQL [FLASH]=>FCS [3]=>ASP [4]=>JSP)」を出力します。

$ARRAY3 = array(0=>"PHP", "perl", "SQL", "FLASH"=>"ActionScript");
$ARRAY4 = array(0=>"ASP", "JSP", "FLASH"=>"FCS");
$NEWARRAY = array_merge_recursive($ARRAY3, $ARRAY4);
print_r($NEWARRAY);

※上記の結果、「Array([0]=>PHP [1]=>perl [2]=>SQL [FLASH]=>([0]=>ActionScript [1]=>FCS) [3]=>ASP [4]=>JSP)」を出力します。

※配列の要素を重複分を含め完全に維持したい場合には、+演算子を使用します。
$NEWARRAY = $ARRAY1 + $ARRAY2;

投稿者 wing : 2005年11月21日 22:17

コメント