首頁  >  文章  >  後端開發  >  如何按列值對 2D 數組資料進行分組以建立 3D 數組?

如何按列值對 2D 數組資料進行分組以建立 3D 數組?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-01 15:09:31341瀏覽

How to Group 2D Array Data by Column Values to Create a 3D Array?

利用列值將2D 數組資料分組以建立3D 數組

可以使用以下方式實現根據特定列的值對多維數組元素進行分組結構化方法。以下是如何完成此任務的詳細說明:

對資料進行排序

要將資料分組,我們首先需要根據等級鍵進行排序。為此,可以使用臨時數組:

<code class="php">$level_arr = [];
foreach ($input_arr as $key => &$entry) {
    $level_arr[$entry['level']][$key] = $entry;
}</code>

此排序操作建立一個數組,其中每個鍵代表一個級別值,對應的值是包含該級別元素的數組。

建構3D 陣列

資料排序後,我們就可以建構所需的3D 陣列:

<code class="php">$result_arr = [];
foreach ($level_arr as $level => $level_data) {
    foreach ($level_data as $index => $entry) {
        $result_arr[$level][$index] = $entry;
    }
}</code>

結果是3D 陣列,其中每個頂部-level key 代表級別,二級key 是原始索引,value 是關聯的資料元素。

注意事項

  • 如果控制超越初始數組的構造是可能的,從一開始就正確構建它可以消除排序和重組的需要。
  • 數組鍵和索引的命名可能需要根據具體用例進行調整。
  • 根據最終 3D 陣列所需的格式,可能需要額外的資料操作。

以上是如何按列值對 2D 數組資料進行分組以建立 3D 數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn