Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengindeks semula Elemen Subarray dalam Tatasusunan Multidimensi dalam PHP?

Bagaimana untuk mengindeks semula Elemen Subarray dalam Tatasusunan Multidimensi dalam PHP?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-05 00:58:01585semak imbas

How to Re-index Subarray Elements in a Multidimensional Array in PHP?

Mengindeks semula Elemen Subarray Tatasusunan Berbilang Dimensi

Dalam PHP, tatasusunan sering digunakan untuk menyimpan struktur data yang kompleks, termasuk tatasusunan berbilang dimensi. Kadangkala, ia menjadi perlu untuk menetapkan semula kunci subarray dalam tatasusunan berbilang dimensi.

Sebagai contoh, pertimbangkan tatasusunan berbilang dimensi berikut dengan kekunci bukan urutan:

Array (
    [1_Name] => Array (
        [1] => leo
        [4] => NULL
    )
    [1_Phone] => Array (
        [1] => 12345
        [4] => 434324
    )
)

Matlamatnya adalah untuk tetapkan semula kekunci subarray untuk bermula dari sifar:

Array (
    [1_Name] => Array (
        [0] => leo
        [1] => NULL
    )
    [1_Phone] => Array (
        [0] => 12345
        [1] => 434324
    )
)

Penyelesaian

Untuk menetapkan semula kekunci semua subarray dalam tatasusunan berbilang dimensi, anda boleh menggunakan array_map () berfungsi bersama-sama dengan fungsi array_values():

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

Fungsi array_values() mengembalikan tatasusunan baharu dengan kekunci angka berjujukan daripada tatasusunan input, menetapkan semula kekunci dengan berkesan. Fungsi array_map() menggunakan fungsi array_values() pada setiap subbarray dalam tatasusunan asal, menghasilkan tatasusunan multidimensi baharu dengan subbarray diindeks semula.

Nota:

Jika anda hanya mahu menetapkan semula kekunci subarray peringkat pertama tanpa menggunakan pengindeksan semula pada subarray bersarang, anda boleh menggunakan array_values() secara langsung tanpa menggunakan array_map():

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

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