ホームページ >バックエンド開発 >PHPチュートリアル >列の値ごとに 2D 配列を 3D 配列にグループ化するにはどうすればよいですか?
プログラミングでは、多くの場合、データ構造を効果的に操作して編成することが必要になります。特定の基準に基づいてデータをグループ化することは一般的なタスクです。この記事では、列の値を使用して 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 サイトの他の関連記事を参照してください。