Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk mengalih keluar nilai pendua dalam tatasusunan dalam php
Dalam PHP, tatasusunan ialah jenis data yang sangat biasa digunakan. Kadangkala kita perlu memastikan bahawa setiap elemen dalam tatasusunan adalah unik, iaitu, tiada pendua. Artikel ini akan memperkenalkan cara mengosongkan nilai pendua dalam tatasusunan, yang boleh membantu anda mengendalikan tatasusunan dengan lebih baik.
Kaedah 1: Gunakan fungsi PHP terbina dalam array_unique()
Fungsi array_unique() yang disediakan oleh PHP boleh digunakan untuk mengalih keluar nilai pendua dari tatasusunan dan mengembalikan baru yang tidak mengandungi nilai pendua.
Kod sampel adalah seperti berikut:
$array = array("a", "b", "c", "b", "d", "a"); $newArray = array_unique($array); print_r($newArray);
Laksanakan kod di atas dan anda akan mendapat keputusan berikut:
Array ( [0] => a [1] => b [2] => c [4] => d )
Kaedah 2: Gunakan gelung untuk traverse
dalam PHP, kita boleh menggunakan loop traversal untuk mencapai tujuan deduplikasi. Kaedah khusus adalah untuk melintasi tatasusunan, bandingkan setiap elemen dengan elemen lain dalam tatasusunan, dan jika pendua ditemui, padamkan elemen tersebut. Tatasusunan akhir yang diperolehi ialah tatasusunan selepas penyahduplikasian.
Kod sampel adalah seperti berikut:
$array = array("a", "b", "c", "b", "d", "a"); $newArray = array(); foreach($array as $value) { if (!in_array($value, $newArray)) { $newArray[] = $value; } } print_r($newArray);
Laksanakan kod di atas dan anda akan mendapat keputusan berikut:
Array ( [0] => a [1] => b [2] => c [4] => d )
Kaedah 3: Gunakan array_flip( ) fungsi
array_flip() boleh menukar kunci dan nilai dalam tatasusunan Jika tatasusunan asal mempunyai nilai pendua, maka selepas pertukaran, hanya satu daripada nilai pendua ini akan kekal, dengan itu. mencapai tujuan mengalih keluar nilai pendua. Kod sampel adalah seperti berikut:$array = array("a", "b", "c", "b", "d", "a"); $newArray = array_flip($array); $newArray = array_flip($newArray); print_r($newArray);Laksanakan kod di atas, anda akan mendapat keputusan berikut:
Array ( [a] => [b] => [c] => [d] => )Dalam kod di atas, gunakan dahulu fungsi array_flip() untuk membalik tatasusunan Kunci dan nilai dalam ditukar dan tatasusunan baru $newArray diperoleh, tetapi nilai tatasusunan baharu ini semuanya kosong. Kemudian gunakan fungsi array_flip() sekali lagi untuk menukar kunci dan nilai tatasusunan baharu, dan hasil akhir ialah tatasusunan yang dinyahduplikasi. RingkasanTiga kaedah di atas semuanya boleh mencapai tujuan mengosongkan nilai pendua dalam tatasusunan, tetapi prinsip pelaksanaannya berbeza. Anda perlu memilih kaedah yang sesuai mengikut situasi sebenar anda. Di samping itu, jika anda perlu mengekalkan nilai pendua dan anda ingin mengira kejadian setiap nilai pendua, anda boleh menggunakan fungsi array_count_values() yang disediakan oleh PHP, yang boleh mengembalikan tatasusunan baharu yang mengandungi setiap elemen dalam tatasusunan asal Bilangan kejadian.
Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar nilai pendua dalam tatasusunan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!