Dalam PHP, kita sering menghadapi situasi apabila berurusan dengan tatasusunan Salah satu masalah yang lebih biasa ialah cara menapis elemen pendua dalam tatasusunan. Artikel ini akan memperkenalkan secara terperinci cara menapis tatasusunan pendua dalam PHP.
1. Fungsi array_unique
Fungsi array_unique terbina dalam dalam PHP boleh menapis elemen pendua dalam tatasusunan. Ia akan mengekalkan kejadian pertama elemen dan mengalih keluar semua elemen pendua yang tinggal.
Sintaks fungsi ini adalah seperti berikut:
array array_unique ( array $array [, int $sort_flags = SORT_STRING ] )
Di mana:
Berikut ialah contoh:
$old_arr = array('apple', 'banana', 'pear', 'banana', 'orange'); $new_arr = array_unique($old_arr); print_r($new_arr); // 输出结果为 Array ( [0] => apple [1] => banana [2] => pear [4] => orange )
Memandangkan terdapat dua elemen 'pisang' dalam tatasusunan asal, hanya satu elemen 'pisang' dikekalkan selepas penapisan array_unik.
2. Penyahduplikasi manual
Selain fungsi array_unique, kita juga boleh menggunakan ciri PHP - nama kunci tidak boleh diulang untuk mencapai penyahduplikasi manual.
Kita boleh merentasi tatasusunan asal dan menyimpan elemen sebagai kunci dalam tatasusunan baharu, supaya kunci dalam tatasusunan baharu akan dinyahduplikasi secara automatik dan nilainya boleh ditetapkan seperti yang dikehendaki.
Berikut ialah kod sampel:
$old_arr = array('apple', 'banana', 'pear', 'banana', 'orange'); $new_arr = array(); foreach ($old_arr as $value) { $new_arr[$value] = 0; } print_r(array_keys($new_arr)); // 输出结果为 Array ( [0] => apple [1] => banana [2] => pear [3] => orange )
Walaupun kaedah ini lebih menyusahkan, ia dapat memastikan susunan input dan output adalah konsisten.
3. Fungsi array_flip
Fungsi array_flip terbina dalam PHP boleh menukar nama dan nilai utama tatasusunan. Memandangkan nama kunci tidak boleh diulang, pertindihan boleh dicapai dengan cepat menggunakan fungsi array_flip.
Berikut ialah kod sampel:
$old_arr = array('apple', 'banana', 'pear', 'banana', 'orange'); $new_arr = array_flip($old_arr); print_r(array_keys($new_arr)); // 输出结果为 Array ( [0] => apple [1] => banana [2] => pear [3] => orange )
Memandangkan terdapat dua elemen 'pisang' dalam tatasusunan asal, hanya satu elemen 'pisang' dikekalkan selepas fungsi array_flip.
4. Ringkasan
Melalui penjelasan artikel ini, kami telah mempelajari cara mengalih keluar elemen pendua dengan cepat daripada tatasusunan dalam PHP.
Kita boleh menggunakan fungsi array_unique terbina dalam, menggunakan penyahduplikasi manual atau menggunakan fungsi array_flip untuk mencapai penyahduplikasian.
Bergantung pada senario dan keperluan tertentu, kita boleh memilih kaedah yang paling sesuai untuk kita untuk mengalih keluar elemen pendua dalam tatasusunan.
Atas ialah kandungan terperinci Bagaimana untuk menapis tatasusunan pendua dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!