Dalam PHP, tatasusunan ialah struktur data yang sangat biasa digunakan. Tatasusunan boleh menggunakan rentetan atau nombor sebagai kunci untuk menyimpan berbilang nilai. Biasanya, apabila melakukan operasi tatasusunan, kami perlu melakukan operasi seperti pengisihan, penyahduplikasian dan penapisan tatasusunan. Dalam sesetengah kes, kita perlu mengalih keluar kunci daripada tatasusunan (iaitu menomborkan semula kunci) dan menjadikan indeks tatasusunan bermula dari 0. Artikel ini menerangkan cara mengalih keluar kunci tatasusunan dalam PHP.
1. Gunakan fungsi array_values
PHP menyediakan fungsi yang dipanggil array_values, yang boleh mengindeks semula semua nilai dalam tatasusunan dan mengembalikan tatasusunan baharu. Menggunakan fungsi ini, anda boleh mengalih keluar kekunci tatasusunan dengan mudah.
Kod sampel:
<?php $arr = array('a'=>'apple', 'b'=>'banana', 'c'=>'cherry'); $new_arr = array_values($arr); print_r($new_arr); ?>
Hasil keluaran:
Array ( [0] => apple [1] => banana [2] => cherry )
Dalam contoh ini, tatasusunan asal mengandungi 3 elemen dan 3 kekunci. Hantar tatasusunan ini ke fungsi array_values dan tatasusunan baharu yang terhasil hanya mengandungi 3 elemen dan kuncinya telah dinomborkan semula, bermula dari 0. Menggunakan kaedah ini, anda boleh mengalih keluar kekunci tatasusunan dengan mudah tanpa perlu mengubah suai tatasusunan asal.
2. Gunakan foreach untuk melintasi
Selain menggunakan fungsi array_values , kita juga boleh menggunakan pernyataan foreach untuk melintasi tatasusunan asal dan memasukkan elemen ke dalam tatasusunan baharu.
Kod sampel:
<?php $arr = array('a'=>'apple', 'b'=>'banana', 'c'=>'cherry'); $new_arr = array(); foreach($arr as $value) { $new_arr[] = $value; } print_r($new_arr); ?>
Hasil keluaran:
Array ( [0] => apple [1] => banana [2] => cherry )
Dalam contoh ini, kami menggunakan pernyataan foreach untuk mengulangi tatasusunan asal. Dengan menggelung ke atas tatasusunan, masukkan setiap elemen daripada tatasusunan asal ke dalam tatasusunan baharu. Akhirnya, tatasusunan baharu yang terhasil mempunyai kunci tatasusunan asal dialih keluar dan elemen boleh diindeks bermula dari 0.
3. Gunakan fungsi array_map
Selain menggunakan array_values dan foreach pernyataan, kami juga boleh menggunakan fungsi array_map terbina dalam dalam PHP. Fungsi ini menggunakan fungsi pada satu atau lebih tatasusunan dan mengembalikan tatasusunan baharu yang mengandungi hasil yang dikembalikan oleh fungsi tersebut.
Kod sampel:
<?php $arr = array('a'=>'apple', 'b'=>'banana', 'c'=>'cherry'); $new_arr = array_map(function($value) { return $value; }, $arr); print_r($new_arr); ?>
Hasil output:
Array ( [a] => apple [b] => banana [c] => cherry )
Dalam contoh ini, kami telah menggunakan fungsi array_map untuk menggunakan fungsi tanpa nama. Memandangkan fungsi tanpa nama hanya mengembalikan elemen itu sendiri, elemen dalam tatasusunan baharu adalah sama seperti dalam tatasusunan asal.
Walaupun menggunakan fungsi array_map untuk mengalih keluar kekunci tatasusunan mungkin kelihatan agak kasar, ia adalah fleksibel dan boleh digunakan. Sebagai contoh, kita boleh menggunakan fungsi ini untuk menukar setiap nilai dalam tatasusunan kepada huruf besar, menanggalkan kunci tatasusunan dalam proses:
Kod sampel:
<?php $arr = array('a'=>'apple', 'b'=>'banana', 'c'=>'cherry'); $new_arr = array_map(function($value) { return strtoupper($value); }, $arr); print_r($new_arr); ?>
Hasil keluaran:
Array ( [a] => APPLE [b] => BANANA [c] => CHERRY )
Dengan menggunakan fungsi array_map, anda boleh dengan cepat dan fleksibel mengendalikan tatasusunan tanpa mengubah suai tatasusunan asal.
4 Gunakan fungsi tetapan semula dan sebelumnya
PHP menyediakan fungsi tetapan semula dan sebelumnya, yang boleh menggelungkan melalui tatasusunan dan mengembalikan elemen pertama atau sebelumnya. Menggunakan kedua-dua fungsi ini, anda boleh mendapatkan semula elemen daripada tatasusunan mengikut tertib dan memasukkannya ke dalam tatasusunan baharu.
Kod sampel:
<?php $arr = array('a'=>'apple', 'b'=>'banana', 'c'=>'cherry'); $new_arr = array(); while (list(, $value) = each($arr)) { $new_arr[] = $value; } print_r($new_arr); ?>
Hasil keluaran:
Array ( [0] => apple [1] => banana [2] => cherry )
Dalam contoh ini, kami menggunakan gelung sementara untuk mengulangi tatasusunan asal dan mendapatkan setiap elemen menggunakan setiap elemen fungsi. Dalam gelung, kami memasukkan setiap elemen ke dalam tatasusunan baharu. Akhirnya, tatasusunan baharu yang terhasil telah mengeluarkan kunci tatasusunan.
Semasa menggunakan tetapan semula dan fungsi sebelumnya mungkin tidak sepantas kaedah lain, ia adalah fleksibel dan boleh disesuaikan serta boleh digunakan untuk operasi tatasusunan lain.
Kesimpulan
Mengalih keluar kekunci tatasusunan dalam PHP ialah tugas biasa kerana ia menjadikan tatasusunan lebih bersih dan lebih mudah untuk dimanipulasi. Dalam artikel ini, kami memperkenalkan empat kaedah untuk mengalih keluar kunci tatasusunan: menggunakan fungsi array_values, menggunakan foreach traversal, menggunakan fungsi array_map dan menggunakan fungsi set semula dan sebelumnya. Melalui kaedah ini, tatasusunan boleh dimanipulasi secara fleksibel untuk memenuhi pelbagai keperluan. Tidak kira jenis operasi yang anda lakukan dengan tatasusunan, adalah penting untuk melindungi tatasusunan asal dan menggunakan tatasusunan baharu untuk melaksanakan operasi seperti yang ditunjukkan dalam artikel ini.
Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar kunci tatasusunan dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!