列の値ごとに 2D 配列を 3D 配列にグループ化するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-02 17:28:29
オリジナル
894 人が閲覧しました

How to Group a 2D Array by Column Value into a 3D Array?

3D 配列の列値を使用して 2D 配列データをグループ化する

プログラミングでは、多くの場合、データ構造を効果的に操作して編成することが必要になります。特定の基準に基づいてデータをグループ化することは一般的なタスクです。この記事では、列の値を使用して 2D 配列をグループ化し、3D 配列を作成する方法について説明します。

次の 2D 配列について考えてみましょう:

[
    ['cust' => 'XT8900', 'type' => 'standard', 'level' => 1],
    ['cust' => 'XT8944', 'type' => 'standard', 'level' => 1],
    ['cust' => 'XT8922', 'type' => 'premier', 'level' => 3],
    ['cust' => 'XT8816', 'type' => 'permier', 'level' => 3],
    ['cust' => 'XT7434', 'type' => 'standard', 'level' => 7],
]
ログイン後にコピー

私たちの目的は、このデータを ' でグループ化することです。 level' 列を使用して、効果的に 3D 配列を作成します。望ましい出力は次のようになります。

Array (

   [1] => Array (
          [0] => Array (
                    [cust] => XT8900
                    [type] => standard
                    )
          [1] => Array (
                    [cust] => XT8944
                    [type] => standard
                    )
          )

   [3] => Array (
          [2] => Array (
                 [cust] => XT8922
                 [type] => premier
                 )

          [3] => Array (
                 [cust] => XT8816
                 [type] => permier
                 )
          )

   [7] => Array (
          [4] => Array (
                 [cust] => XT7434
                 [type] => standard
                 )
          )
)
ログイン後にコピー

最適なアプローチ

最も効率的な解決策は、可能であれば 3D 配列を直接作成することです。ただし、これが不可能な場合は、並べ替えに中間の一時配列を使用できます。

<code class="php">foreach ($input_arr as $key => &$entry) {
    $level_arr[$entry['level']][$key] = $entry;
}</code>
ログイン後にコピー

これにより、目的の 3D 配列構造が得られます。最適なパフォーマンスを得るには、可能であれば最初から最終形式で配列を構築することを検討することが重要です。

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!