Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich ein 2D-PHP-Array nach Maschine und geordneten Jobs in ein 3D-Array umstrukturieren?

Wie kann ich ein 2D-PHP-Array nach Maschine und geordneten Jobs in ein 3D-Array umstrukturieren?

Susan Sarandon
Susan SarandonOriginal
2024-12-12 17:14:11961Durchsuche

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

Umstrukturierung eines mehrdimensionalen Arrays in PHP

In der gegebenen Abfrage besteht das Ziel darin, ein 2D-Array in ein 3D-Array umzuwandeln, in dem jedes Element enthalten ist stellt eine Maschine dar und enthält die zugehörigen Jobs, geordnet in aufsteigender Reihenfolge basierend auf ihrem ursprünglichen Schlüssel. So kann dies in PHP erreicht werden:

Wir beginnen mit der Initialisierung eines leeren Arrays namens $result, das die neu strukturierten Daten enthält. Dann durchlaufen wir mithilfe einer foreach-Schleife das ursprüngliche Array $MainArray.

Für jeden Datensatz in $MainArray extrahieren wir den Wert „Machine_Name“ und verwenden ihn als Schlüssel für ein Unterarray innerhalb von $result. Wenn in $result kein Eintrag für diese Maschine vorhanden ist, wird er mit einem leeren Array erstellt.

Wir hängen dann den aktuellen Datensatz an das Unterarray an, das dem Maschinennamen zugeordnet ist. Dadurch werden effektiv alle Jobs zusammengefasst, die sich auf dieselbe Maschine beziehen.

Um sicherzustellen, dass die Jobs in der gewünschten Reihenfolge angeordnet sind, sortieren wir jedes Unterarray mithilfe der ksort-Funktion in aufsteigender Reihenfolge des Originalschlüssels. Das Ergebnis wird wieder im $result-Array gespeichert.

Der folgende Code veranschaulicht diesen Prozess:

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

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

Dieser Code erzeugt ein 3D-Array, $result, wobei die erste Dimension Maschinen darstellt und die zweite Dimension enthält eine geordnete Liste von Jobs, die jeder Maschine zugeordnet sind.

Das obige ist der detaillierte Inhalt vonWie kann ich ein 2D-PHP-Array nach Maschine und geordneten Jobs in ein 3D-Array umstrukturieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn