Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk mengindeks semula Elemen Subarray dalam Tatasusunan Berbilang Dimensi?

Bagaimana untuk mengindeks semula Elemen Subarray dalam Tatasusunan Berbilang Dimensi?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-05 14:50:03772semak imbas

How to Re-index Subarray Elements in Multidimensional Arrays?

Mengindeks semula Elemen Subarray dalam Tatasusunan Berbilang Dimensi

Dalam tatasusunan berbilang dimensi, menetapkan semula indeks utama boleh berguna untuk mengekalkan susunan yang boleh diramal atau menjajarkan nilai dengan tatasusunan lain.

Masalah:

Bagaimanakah anda menetapkan semula kunci subarray dalam tatasusunan berbilang dimensi, menomborkannya semula secara berurutan daripada sifar? Pertimbangkan contoh berikut:

<code class="php">$arr = [
    '1_Name' => [
        1 => 'leo',
        4 => null
    ],
    '1_Phone' => [
        1 => 12345,
        4 => 434324
    ]
];
// Expected output:
// Array (
//     [1_Name] => [
//         0 => 'leo',
//         1 => null
//     ]
//     [1_Phone] => [
//         0 => 12345,
//         1 => 434324
//     ]
// )</code>

Penyelesaian:

Untuk mencapai ini, anda boleh menggunakan pendekatan berikut:

<code class="php">$arr = array_map('array_values', $arr);</code>

Peta_tatasusunan () fungsi menggunakan array_values() fungsi untuk setiap subarray dalam $arr. array_values() mengindeks semula kunci subarray secara berurutan daripada sifar.

<code class="php">// array_values() for first-level arrays only
$arr = array_values($arr);</code>

Untuk penetapan semula kunci tatasusunan peringkat pertama, anda boleh menggunakan array_values() tanpa array_map().

Atas ialah kandungan terperinci Bagaimana untuk mengindeks semula Elemen Subarray dalam Tatasusunan Berbilang Dimensi?. 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