Rumah > Artikel > pembangunan bahagian belakang > Terdapat beberapa cara untuk menyahduplikasi tatasusunan dalam php
Terdapat tiga kaedah biasa untuk menyahduplikasi tatasusunan dalam PHP: 1. Fungsi "array_unique()", yang boleh mengalih keluar nilai pendua dalam tatasusunan dan mengembalikan tatasusunan baharu 2. Gunakan gelung untuk padamkan item pendua, gunakan untuk Atau gelung foreach merentasi keseluruhan tatasusunan untuk menentukan sama ada terdapat pendua dan padamkannya 3. Gunakan fungsi "array_flip()" dan "array_keys()" Fungsi "array_flip()" menukar kunci dan nilai tatasusunan, dan "array_keys()" Dapatkan semua nama kunci.
Sistem pengendalian untuk tutorial ini: Sistem Windows 10, versi php8.1.3, komputer Dell G3.
Terdapat tiga cara biasa untuk mengalih keluar pendua daripada tatasusunan dalam PHP:
1 Gunakan fungsi array_unique()
array_unique() fungsi untuk. alih keluar pendua daripada tatasusunan nilai berulang dan kembalikan tatasusunan baharu.
$array = array("a" => "apple", "b" => "banana", "c" => "apple"); $unique_array = array_unique($array); print_r($unique_array);
Hasil keluarannya ialah:
Array ( [a] => apple [b] => banana )
2 Gunakan gelung untuk memadam item pendua
Gunakan gelung for atau foreach untuk. melintasi keseluruhan tatasusunan dan menilai Semak jika terdapat pendua dan padamkannya. Kaedah ini berfungsi dengan baik untuk tatasusunan kecil, tetapi boleh memakan masa untuk tatasusunan besar.
$array = array("a" => "apple", "b" => "banana", "c" => "apple"); foreach ($array as $key => $value) { $count = 0; foreach ($array as $k => $v) { if ($v == $value) { $count++; if ($count > 1) { unset($array[$k]); } } } } print_r($array);
Output:
Array ( [a] => apple [b] => banana )
3 Gunakan fungsi array_flip() dan array_keys()
Gunakan fungsi array_flip() untuk menukar kekunci. dan nilai tukar tatasusunan, dan gunakan array_keys() untuk mendapatkan semua nama kunci. Memandangkan kunci adalah unik, ini berkesan mewujudkan satu set hasil yang tidak mengandungi item pendua.
$array = array("a" => "apple", "b" => "banana", "c" => "apple"); $unique_array = array_flip(array_flip($array)); print_r($unique_array);
Outputnya ialah:
Array ( [a] => apple [b] => banana )
Kaedah ini hanyalah beberapa cara untuk mencapai penyahduplikasi tatasusunan Terdapat cara lain seperti menggunakan array_count_values(), array_reduce(), dsb. Untuk pembangun menguasai mengikut keperluan sebenar.
Atas ialah kandungan terperinci Terdapat beberapa cara untuk menyahduplikasi tatasusunan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!