首頁 >後端開發 >php教程 >如何透過機器和有序作業將 2D PHP 陣列重構為 3D 陣列?

如何透過機器和有序作業將 2D PHP 陣列重構為 3D 陣列?

Susan Sarandon
Susan Sarandon原創
2024-12-12 17:14:11963瀏覽

How Can I Restructure a 2D PHP Array into a 3D Array by Machine and Ordered Jobs?

在PHP 中重構多維數組

在給定的查詢中,目標是將2D 數組轉換為3D 數組,其中每組個元素代表一台機器並包含根據其原始密鑰按升序排列的關聯作業。以下是如何在 PHP 中實現此目的:

我們首先初始化一個名為 $result 的空數組,該數組將保存重構的資料。然後,我們使用 foreach 迴圈迭代原始陣列 $MainArray。

對於 $MainArray 中的每筆記錄,我們提取 Machine_Name 值並將其用作 $result 中子數組的鍵。如果 $result 中不存在該機器的條目,則會使用空數組建立該條目。

然後我們將目前記錄附加到與 Machine_Name 關聯的子陣列中。這有效地將與同一台機器相關的所有作業分組在一起。

為了確保作業按所需順序排列,我們使用 ksort 函數按原始鍵的升序對每個子數組進行排序。結果被儲存回 $result 數組。

下面的程式碼示範了此過程:

$result = [];
foreach ($MainArray as $record) {
    $result[$record['Machine_Name']][] = $record;
}

foreach ($result as $machine => $jobs) {
    ksort($result[$machine]);
}

此程式碼將產生一個3D 陣列$result,其中第一個維度代表機器第二個維度包含與每台機器關聯的作業的有序列表。

以上是如何透過機器和有序作業將 2D PHP 陣列重構為 3D 陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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