ホームページ >バックエンド開発 >PHPチュートリアル >PHP で多次元配列から特定の列を抽出するにはどうすればよいですか?

PHP で多次元配列から特定の列を抽出するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-05 16:07:14379ブラウズ

How Can I Extract a Specific Column from a Multi-Dimensional Array in PHP?

多次元配列からの単一列の抽出

データ操作のコンテキストでは、複雑なデータ構造から特定の情報を抽出するのが一般的です。タスク。 PHP プログラマは、多次元配列から特定の列を取得する必要があることがよくあります。

各サブ配列が行を表し、各キーが列を表すテーブルを表す多次元配列を考えてみましょう。たとえば、「blogTags_id」、「tag_name」、「inserted_on」、「inserted_by」などのキーを含む配列は、それらの対応する列を含むテーブルを表します。

ここで、次の値のみを取得したいとします。 「tag_name」列をカンマ区切りの文字列に連結すると、配列操作を組み合わせて使用​​できます。関数:

// Sample multi-dimensional array
$input = [
    [
        'blogTags_id' => 1,
        'tag_name' => 'google',
        'inserted_on' => '2013-05-22 09:51:34',
        'inserted_by' => 2
    ],
    [
        'blogTags_id' => 2,
        'tag_name' => 'technology',
        'inserted_on' => '2013-05-22 09:51:34',
        'inserted_by' => 2
    ]
];

// Extract tag names into a new array using array_column (PHP 5.5+)
$tagNames = array_column($input, 'tag_name');

// Convert the array to a comma-separated string with implode
$output = implode(', ', $tagNames);

echo $output; // Output: "google, technology"

5.5 より前の PHP バージョンの場合、匿名関数を array_map と組み合わせて使用​​すると、同じ結果が得られます:

$output = implode(', ', array_map(function ($entry) {
    return $entry['tag_name'];
}, $input));

以上がPHP で多次元配列から特定の列を抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。