PHPで配列を連結する方法:array_merge()

PHPでは配列を操作する便利な関数が多数用意されています。今回は複数の配列を一つに連結する array_merge()を紹介します。

複数の配列を連結する

例えば以下のような配列があるとします。

この配列を1つの配列に連結したいとします。この場合、foreachなどを使って配列を連結していく方法もありますが、array_merge()を使うと簡単に連結できます。

このとき、$dataは以下のようになります。

このように最初の配列の後ろに2番目の配列が連結されます。

配列を3つ連結させたい場合にも引数を増やしていくだけです。

連想配列の場合

文字列をキーとする連想配列の場合も基本的な動きは同じですが、同じキーがある場合が異なります。文字列の同じキーがある場合、後方の配列で上書きされます。

例えば、以下のような配列があるとします。

$data1にも$data2にもappleというキーがあり、$data1は100、$data2は200です。この2つの配列をarray_merge()で連結してみます。

この場合、以下のようになります。

apple、orange、melon、と2つの配列の内容が連結されていますが、appleは$data1の内容(100)が$data2の内容(200)で上書きされています。