php 二次元配列から特定のキーを指定して配列を作成する

phpで、array_columnを使用して、二次元配列から特定のキーを指定して配列を作成するサンプルコードを記述してます。phpのバージョンは8.0です。
環境
- OS CentOS Linux release 8.0.1905 (Core)
- php 8.0.0
- nginx 1.14.1
array_column使い方
array_columnを使用すれば、二次元配列から特定のキーを指定して配列を作成することが可能です。
1 |
array_column(配列, キー名); |
以下は、二次元配列から特定のキーを指定して配列を作成するサンプルコードとなります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
<?php $arr = [ [ "date" => "2021/01/01", "num" => 10, "dayofweek" => "fri", ], [ "date" => "2021/01/02", "num" => 15, "dayofweek" => "sat", ], [ "date" => "2021/01/03", "num" => 20, "dayofweek" => "sun", ], ]; $result = array_column($arr, "dayofweek"); print_r($result); |
実行結果
1 2 3 4 5 6 |
Array ( [0] => fri [1] => sat [2] => sun ) |
キー名を二次元配列から指定することも可能です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
<?php $arr = [ [ "date" => "2021/01/01", "num" => 10, "dayofweek" => "fri", ], [ "date" => "2021/01/02", "num" => 15, "dayofweek" => "sat", ], [ "date" => "2021/01/03", "num" => 20, "dayofweek" => "sun", ], ]; $result = array_column($arr, "dayofweek", "date"); print_r($result); |
実行結果
1 2 3 4 5 6 |
Array ( [2021/01/01] => fri [2021/01/02] => sat [2021/01/03] => sun ) |
第二引数をnullにすることで、値をキーにした連想配列にすることも可能です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
<?php $arr = [ [ "date" => "2021/01/01", "num" => 10, "dayofweek" => "fri", ], [ "date" => "2021/01/02", "num" => 15, "dayofweek" => "sat", ], [ "date" => "2021/01/03", "num" => 20, "dayofweek" => "sun", ], ]; $result = array_column($arr, NULL, "date"); print_r($result); |
実行結果
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
Array ( [2021/01/01] => Array ( [date] => 2021/01/01 [num] => 10 [dayofweek] => fri ) [2021/01/02] => Array ( [date] => 2021/01/02 [num] => 15 [dayofweek] => sat ) [2021/01/03] => Array ( [date] => 2021/01/03 [num] => 20 [dayofweek] => sun ) ) |
-
前の記事
Vue3 ライブラリ「smart-tagz」を使用してタグ入力を実装する 2021.01.05
-
次の記事
cssのみで画像をハーフトーン加工 2021.01.05
コメントを書く