【PHP】配列・連想配列を追加、結合する関数|array_unshift ・array_push・array_merge

今回は、PHPで個人的によく使う、配列・連想配列を結合・追加する関数のまとめとなります。

配列の最初に要素を追加|array_unshift

array_unshift関数では、第1引数に指定した配列の先頭に、第2引数以降に指定した要素を追加します。また、戻り値は処理後の配列の要素数となります。

以下、array_unshift関数の例となります。

$array = array( "竹山", "永井マネージャー"  );

$result = array_unshift( $array, "ザキヤマ", "河本" );
// 処理後の配列
print_r( $array );
// 処理後の配列の要素数
print_r( "<br>配列の要素数は" . $result );

出力結果

Array ( 
	[0] => ザキヤマ 
    [1] => 河本 
    [2] => 竹山 
    [3] => 永井マネージャー 
) 
配列の要素数は4

キーが文字列の連想配列を扱う場合

キーが文字列の連想配列はarray_unshift関数ではを扱えません。そのため、連想配列を追加するにはarray_merge関数などで追加します。

配列の最後に要素を追加|array_push

array_push関数では、第1引数に指定した配列の最後に、第2引数以降に指定した要素を追加します。また、戻り値は処理後の配列の要素数となります。

以下、array_push関数の例となります。

$array = array( "竹山", "永井マネージャー"  );

$result = array_push( $array, "ザキヤマ", "河本" );
// 処理後の配列
print_r( $array );
// 処理後の配列の要素数
print_r( "<br>配列の要素数は" . $result );

出力結果

Array ( 
	[0] => 竹山 
    [1] => 永井マネージャー 
    [2] => ザキヤマ 
    [3] => 河本 
) 
配列の要素数は4

キーが文字列の連想配列を扱う場合

キーが文字列の連想配列はarray_push関数ではを扱えません。そのため、連想配列を追加するにはarray_merge関数などで追加します。

配列・連想配列を結合|array_merge

array_merge関数は、引数に指定した配列・連想配列を、順番で結合して返します。

以下、array_merge関数の例となります。

$array1 = array( 
	"竹山",
	"マネージャー" => "永井",
	"事務所" => "サンミュージック"
);
$array2 = array( 
	"ザキヤマ",
	"事務所" => "人力舎"
);

$output = array_merge( $array1, $array2 );
print_r( $output );

出力結果

Array ( 
	[0] => 竹山 
    [マネージャー] => 永井 
    [事務所] => 人力舎 
    [1] => ザキヤマ 
)

結合する配列のキーが同じ文字列の場合は上書き

上記例のようにarray_merge関数では、結合する配列に同じ文字列のキーがある場合、 前の値は上書きされます。

キーがインデックス(添字)の場合には値は上書きされず、処理後の配列で0から始まる連続したインデックスとなります。

また、配列を上書きできる関数は他にもあります。詳しくは以下のリンク先を参考にしてみてください。

参考サイトなど

コメント投稿コメント投稿欄を開く

コメントは項目欄(*は必須項目)を入力し、「コメントを送信」ボタンをクリックしてください。 (メールアドレスは公開されることはありません。コメントの公開は承認制となります。)

また、多忙によりコメントには返信できない場合があります。

Twitterで返信する場合はこちらから。