Rumah > Artikel > pembangunan bahagian belakang > Bagaimanakah Saya Boleh Meratakan Tatasusunan Bersarang dalam PHP?
Menukar Tatasusunan Bersarang kepada Satu Dimensi
Dalam senario pengaturcaraan ini, anda menghadapi tatasusunan yang terdiri daripada subarray elemen tunggal. Tugas di tangan ialah untuk menukar struktur berbilang dimensi ini kepada tatasusunan satu dimensi.
Pendekatan Asli PHP
PHP menyediakan fungsi yang mudah dipanggil array_map yang boleh mengendalikan penukaran ini dengan cekap. Berikut ialah contoh:
$array = [[88868], [88867], [88869], [88870]]; $oneDimensionalArray = array_map('current', $array); // Output: [88868, 88867, 88869, 88870]
Fungsi peta_susun mengambil fungsi panggil balik sebagai argumen pertama dan tatasusunan sebagai argumen kedua. Dalam kes ini, arus fungsi panggil balik mendapatkan semula elemen semasa daripada setiap subarray, dengan berkesan meratakan tatasusunan.
Generalisasi untuk Subarray Berbilang Elemen
Jika subarray mengandungi berbilang elemen, pendekatan di atas hanya akan mengembalikan elemen pertama setiap subarray. Untuk menangani senario ini, anda boleh menggunakan fungsi call_user_func_array:
$oneDimensionalArray = call_user_func_array('array_merge', $array); // Output: [88868, 88867, 88869, 88870]
Fungsi call_user_func_array memanggil fungsi panggil balik dengan tatasusunan argumen, dalam kes ini, tatasusunan subarray. Fungsi array_merge menggabungkan semua elemen ke dalam tatasusunan tunggal, menghasilkan penukaran yang diingini.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Meratakan Tatasusunan Bersarang dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!