Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menghimpunkan Subarray dan Memformat Nilai mengikut Lajur dalam PHP?

Bagaimana untuk Menghimpunkan Subarray dan Memformat Nilai mengikut Lajur dalam PHP?

Linda Hamilton
Linda Hamiltonasal
2024-11-02 09:45:02721semak imbas

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

Kumpulkan Subarray mengikut Lajur, Format Nilai daripada Lajur Lain Dalam Kumpulan

Dalam tatasusunan tertentu di mana setiap subarray terdiri daripada dua lajur, tugas adalah untuk mengumpulkan subarray mengikut lajur kedua dan mencipta tatasusunan baharu di mana setiap kumpulan mempunyai nilai daripada lajur pertama yang digabungkan dengan koma dan lajur kedua sebagai nilai kedua.

Sebagai contoh, tatasusunan input seperti:

$array = [
    ["444", "0081"],
    ["449", "0081"],
    ["451", "0081"],
    ["455", "2100"],
    ["469", "2100"]
];

hendaklah diubah menjadi:

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

Penyelesaian:

Pendekatan mudah untuk mencapai ini adalah seperti berikut:

<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>

Penyelesaian ini mengendalikan transformasi dengan cekap, menghasilkan output yang diingini.

Atas ialah kandungan terperinci Bagaimana untuk Menghimpunkan Subarray dan Memformat Nilai mengikut Lajur dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn