Bagaimana untuk mengalih keluar kunci tatasusunan dalam PHP

PHPz
Lepaskan: 2023-04-24 15:02:41
asal
671 orang telah melayarinya

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(&#39;a&#39;=>'apple', 'b'=>'banana', 'c'=>'cherry');
$new_arr = array_values($arr);
print_r($new_arr);
?>
Salin selepas log masuk

Hasil keluaran:

Array ( [0] => apple [1] => banana [2] => cherry )
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

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(&#39;a&#39;=>'apple', 'b'=>'banana', 'c'=>'cherry');
$new_arr = array();
foreach($arr as $value) {
    $new_arr[] = $value;
}
print_r($new_arr);
?>
Salin selepas log masuk

Hasil keluaran:

Array ( [0] => apple [1] => banana [2] => cherry )
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

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(&#39;a&#39;=>'apple', 'b'=>'banana', 'c'=>'cherry');
$new_arr = array_map(function($value) { return $value; }, $arr);
print_r($new_arr);
?>
Salin selepas log masuk

Hasil output:

Array ( [a] => apple [b] => banana [c] => cherry )
Salin selepas log masuk

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(&#39;a&#39;=>'apple', 'b'=>'banana', 'c'=>'cherry');
$new_arr = array_map(function($value) { return strtoupper($value); }, $arr);
print_r($new_arr);
?>
Salin selepas log masuk

Hasil keluaran:

Array ( [a] => APPLE [b] => BANANA [c] => CHERRY )
Salin selepas log masuk

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(&#39;a&#39;=>'apple', 'b'=>'banana', 'c'=>'cherry');
$new_arr = array();
while (list(, $value) = each($arr)) {
    $new_arr[] = $value;
}
print_r($new_arr);
?>
Salin selepas log masuk

Hasil keluaran:

Array ( [0] => apple [1] => banana [2] => cherry )
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan