Ein Benutzer stieß auf eine Herausforderung, als er versuchte, ein zweidimensionales Array ($MainArray) in ein 3-dimensionales Array umzuwandeln. dimensionales Array ($ConvertedArray). Der Benutzer wollte Jobs basierend auf ihren Maschinennamen gruppieren und ihre Originalschlüssel beibehalten.
Die Lösung für diese Herausforderung liegt in der Verwendung einer PHP-Funktion namens array_column. Mit dieser Funktion können Sie bestimmte Spalten aus einem mehrdimensionalen Array extrahieren. So verwenden Sie es in diesem Fall:
$machineNames = array_column($MainArray, 'Machine_Name'); $uniqueMachines = array_unique($machineNames); $ConvertedArray = []; foreach ($uniqueMachines as $machineName) { $ConvertedArray[$machineName] = array_filter($MainArray, function ($job) use ($machineName) { return $job['Machine_Name'] === $machineName; }); }
Dieser Code führt die gewünschte Transformation durch, indem er über die eindeutigen Maschinennamen iteriert und die Jobs entsprechend im $ConvertedArray gruppiert. Das Ergebnis ist ein neues Array mit Maschinennamen als Schlüssel und Arrays verwandter Jobs als Werte.
Der bereitgestellte Code kann einfach in Ihr PHP-Skript implementiert werden, um die gewünschte Ausgabe zu erzielen. Die ursprünglichen und konvertierten Arrays können zur Überprüfung ausgedruckt werden:
echo '<pre class="brush:php;toolbar:false">'; print_r($MainArray); echo ''; echo '
'; print_r($ConvertedArray); echo '';
Dadurch werden sowohl das ursprüngliche zweidimensionale Array als auch das neu erstellte dreidimensionale Array ausgegeben.
Das obige ist der detaillierte Inhalt vonWie kann ich ein 2D-PHP-Array basierend auf den Werten einer Spalte in ein 3D-Array umwandeln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!