Wie gruppiere ich Subarrays und formatiere Werte nach Spalten in PHP?

Linda Hamilton
Freigeben: 2024-11-02 09:45:02
Original
786 Leute haben es durchsucht

How to Group Subarrays and Format Values by Column in PHP?

Subarrays nach Spalte gruppieren, Werte aus anderen Spalten innerhalb von Gruppen formatieren

In einem gegebenen Array, in dem jedes Subarray aus zwei Spalten besteht, ist die Aufgabe besteht darin, die Unterarrays nach der zweiten Spalte zu gruppieren und ein neues Array zu erstellen, in dem jede Gruppe die Werte aus der ersten Spalte mit Kommas verkettet und die zweite Spalte als zweiten Wert enthält.

Zum Beispiel ein Eingabearray wie:

$array = [
    ["444", "0081"],
    ["449", "0081"],
    ["451", "0081"],
    ["455", "2100"],
    ["469", "2100"]
];
Nach dem Login kopieren

sollte umgewandelt werden in:

array (
  0 => 
  array (
    0 => '444,449,451',
    1 => '0081',
  ),
  1 => 
  array (
    0 => '455,469',
    1 => '2100',
  ),
)
Nach dem Login kopieren

Lösung:

Ein einfacher Ansatz, um dies zu erreichen, ist wie folgt:

<code class="php">// Create an empty array to store the grouped data
$groups = [];

// Loop through the input array
foreach ($array as $item) {
    // If the second column value is not yet a key in $groups, create an empty array for it
    if (!array_key_exists($item[1], $groups)) {
        $groups[$item[1]] = [];
    }
    
    // Add the first column value to the array at the corresponding key
    $groups[$item[1]][] = $item[0];
}

// Initialize the new array with the desired structure
$structured = [];

// Loop through the groups
foreach ($groups as $group => $values) {
    // Join the first column values with commas and add the group key as the second column
    $structured[] = [implode(',', $values), $group];
}</code>
Nach dem Login kopieren

Diese Lösung wickelt die Transformation effizient ab und führt zum gewünschten Ergebnis.

Das obige ist der detaillierte Inhalt vonWie gruppiere ich Subarrays und formatiere Werte nach Spalten in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage