close

多次元配列の値から、キーを取得する方法【PHP】array_search()/array_column()

公開日:

2次元の配列の値から1次元のキーを取得したい場合、どのように処理を行えば良いか。についてまとめました。

配列を用意

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

$hogeArray = [
    0 => ["ID" => 5, "Name" => 東京駅],
    1 => ["ID" => 8, "Name" => 博多駅],
    2 => ["ID" => 9, "Name" => 広島駅],
]

行いたい処理

二次元の”Name”に”博多駅”が格納されている1次元のキーを取得したい。(今回は 1 )

関連PHP関数

array_search()

配列の値からキーを取り出す

array_column()

多次元連想配列の値から一次元のキーを取り出す

使用する関数

$key = array_search("博多駅", array_column($hogeArray, "Name"));
print_r($key) // 1

1を取得することができました。

改修などで、配列の構造を変更できない場合、このような構造の配列を処理する場合に様々応用が効くかなと思いますのでまとめました。
以上です!

About Photo

Place : Tokyo Station
2020.03

Comment

メールアドレスが公開されることはありません。