スポンサーリンク

PHPの多次元配列から任意のキーの値をすべて取得する方法

PHP
スポンサーリンク
本ページにはプロモーションが含まれています。

PHPの多次元配列で、特定のキーの値を指定して各インデックスの要素の値を取得する方法は紹介します。ループを使用して配列を繰り返し処理し、指定したキーの値を取得する方法と array_column 関数を使った方法を紹介します。

以下に例を示します。

スポンサーリンク

例: 多次元配列からキーの値を取得する

サンプルデータ

今回は以下のようなサンプルデータを用います。

<?php
// 多次元配列の例
$people = [
    [
        'name' => 'Taro',
        'age' => 25,
        'city' => 'Sendai'
    ],
    [
        'name' => 'Hanako',
        'age' => 30,
        'city' => 'Tokyo'
    ],
    [
        'name' => 'Kenji',
        'age' => 35,
        'city' => 'Osaka'
    ]
];

foreach を使った方法

まずは、単純に foreach で回すやり方です。

<?php
// 多次元配列の例
$people = [
    [
        'name' => 'Taro',
        'age' => 25,
        'city' => 'Sendai'
    ],
    [
        'name' => 'Hanako',
        'age' => 30,
        'city' => 'Tokyo'
    ],
    [
        'name' => 'Kenji',
        'age' => 35,
        'city' => 'Osaka'
    ]
];

// 特定のキー 'name' の値を取得する
foreach ($people as $person) {
    echo $person['name'] . "\n"; // Taro, Hanako, Kenji の順で出力
}
?>
  • foreach ループを使用して、$people 配列の各要素(連想配列)を $person として繰り返し処理します。
  • $person の中の name キーにアクセスして、その値を取得し、出力しています。

これにより、多次元配列の中から特定のキー(この場合は ‘name’)の値を取得できます。

array_column() を使った方法

foreachを使わずに、PHPの関数で多次元配列の特定のキーの値を取得する方法として、array_column() 関数が使えます。この関数は、配列から特定のキーに対応する値を一括で取得するのに便利です。

<?php
// 多次元配列の例
$people = [
    [
        'name' => 'Taro',
        'age' => 25,
        'city' => 'Sendai'
    ],
    [
        'name' => 'Hanako',
        'age' => 30,
        'city' => 'Tokyo'
    ],
    [
        'name' => 'Kenji',
        'age' => 35,
        'city' => 'Osaka'
    ]
];

// 特定のキー 'name' の値を取得する
$names = array_column($people, 'name');

print_r($names); // ['Taro', 'Hanako', 'Kenji'] が出力される
?>

説明

  • array_column() は、配列の中から特定のキー(この場合は ‘name’)に対応する値を取得します。
  • 第一引数に多次元配列、第二引数に取得したいキー名を指定します。
  • これにより、$names には ['Taro', 'Hanako', 'Kenji'] という配列が格納されます。

まとめ

array_column() は、特定のキーの値を一括で取得したい場合にとても便利な関数です。

PHP
スポンサーリンク
FOLLOW
たろのプログラミング日記
タイトルとURLをコピーしました