「まさかそんな便利なメソッドないだろ〜」と思って調べたらあったのでメモ。
以下のような連想配列の配列なデータがあって、
そのうちのキーid
のみの配列が欲しいときの話です。
$users = array(
array(
'id' => 2135,
'first_name' => 'John',
'last_name' => 'Doe',
),
array(
'id' => 3245,
'first_name' => 'Sally',
'last_name' => 'Smith',
),
array(
'id' => 5342,
'first_name' => 'Jane',
'last_name' => 'Jones',
)
);
普通にやると、ループを回して新しい配列に詰め直す必要がありそうですが、
$id_list = array_column( $users, 'id' );
↑たったこれだけで実現できます。
### 結果
print_r( $id_list );
Array
(
[0] => 2135
[1] => 3245
[2] => 5342
)