ホームページ > バックエンド開発 > PHPチュートリアル > 2D PHP 配列を列の値で効率的にグループ化するにはどうすればよいですか?

2D PHP 配列を列の値で効率的にグループ化するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-12-26 02:27:09
オリジナル
226 人が閲覧しました

How to Efficiently Group a 2D PHP Array by Column Value?

PHP を使用した列値による 2D 配列の効率的なグループ化

特定の列値による多次元配列のグループ化により、データの編成と取得が強化されます。このタスク用のネイティブ PHP 関数はありませんが、foreach ループを使用したカスタム アプローチで効果的にこの目標を達成できます。

問題:

を表す次の 2D 配列について考えてみましょう。データ行:

$array = [
    [
        'id' => 96,
        'shipping_no' => '212755-1',
        'part_no' => 'reterty',
        'description' => 'tyrfyt',
        'packaging_type' => 'PC',
    ],
    [
        'id' => 96,
        'shipping_no' => '212755-1',
        'part_no' => 'dftgtryh',
        'description' => 'dfhgfyh',
        'packaging_type' => 'PC',
    ],
    [
        'id' => 97,
        'shipping_no' => '212755-2',
        'part_no' => 'ZeoDark',
        'description' => 's%c%s%c%s',
        'packaging_type' => 'PC',
    ],
];
ログイン後にコピー

目的は、配列要素を「id」列と形式でグループ化することです。グループ化された行の部分配列。

解決策:

foreach ループの使用:

$result = [];
foreach ($data as $element) {
    $result[$element['id']][] = $element;
}
ログイン後にコピー

説明:

foreach ループは、$data 配列内の各要素を反復処理します。各要素について、「id」列をチェックし、それを $result 配列のキーとして使用します。キー (id) がすでに存在する場合、新しい要素が対応するサブ配列に追加されます。

出力:

$result 配列は ' に基づいてグループ化されます。 id' 列の結果:

$result = [
    96 => [
        [
            'id' => 96,
            'shipping_no' => '212755-1',
            'part_no' => 'reterty',
            'description' => 'tyrfyt',
            'packaging_type' => 'PC',
        ],
        [
            'id' => 96,
            'shipping_no' => '212755-1',
            'part_no' => 'dftgtryh',
            'description' => 'dfhgfyh',
            'packaging_type' => 'PC',
        ],
    ],
    97 => [
        [
            'id' => 97,
            'shipping_no' => '212755-2',
            'part_no' => 'ZeoDark',
            'description' => 's%c%s%c%s',
            'packaging_type' => 'PC',
        ],
    ],
];
ログイン後にコピー

このメソッドは、2D 配列をグループ化する柔軟かつ効率的な方法を提供します。指定された列の値により、効率的なデータの抽出と操作が可能になります。

以上が2D PHP 配列を列の値で効率的にグループ化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート