カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

配列やオブジェクトから指定した列の値を取得する

この記事は最終更新日から1年以上経過しています。

array_columnという関数を使って、配列やオブジェクトから指定した列(カラム)の値を取得することができます。
オブジェクトからも取り出せるのは非常に便利だなと思いました。

以下のような連想配列があったとします。

$ARRAY = [
    [
        "id" => 1,
        "name" => "aiko"
    ],
    [
        "id" => 2,
        "name" => "beta"
    ],
    [
        "id" => 3,
        "name" => "clare"
    ]
];

array_column関数を使ってname列だけを取り出してみます。

$NAME = array_column($ARRAY, "name");

print_r($NAME);

出力結果はこのようになります。

Array
(
    [0] => aiko
    [1] => beta
    [2] => clare
)

オブジェクトの場合

class User
{
    public $username;

    public function __construct(string $username)
    {
        $this->username = $username;
    }
}

$users = [
    new User("user 1"),
    new User("user 2"),
    new User("user 3"),
];

$USER = array_column($users, "username");

print_r($USER);

出力結果

Array
(
    [0] => user 1
    [1] => user 2
    [2] => user 3
)

公式リファレンス:
PHP: array_column – Manual

この記事がお役に立ちましたらシェアお願いします
5,182 views

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です