php keluarkan pendua daripada tatasusunan

WBOY
Lepaskan: 2023-05-07 21:28:37
asal
554 orang telah melayarinya

PHP ialah bahasa pengaturcaraan yang sangat popular yang dirujuk oleh ramai pembangun sebagai "Javaskrip sebelah pelayan". Penggunaan PHP adalah sangat biasa apabila membangunkan aplikasi web. Tatasusunan ialah jenis data yang sangat biasa dalam PHP. Walau bagaimanapun, banyak kali kita perlu mengalih keluar elemen pendua daripada tatasusunan untuk memanipulasi data dengan lebih baik. Nah, dalam artikel ini, kita akan meneroka cara untuk mengalih keluar elemen pendua daripada tatasusunan menggunakan PHP.

Pertama sekali, mari kita lihat tatasusunan yang mengandungi elemen berulang:

$my_array = array(1, 2, 3, 4, 5, 6, 1, 2, 3, 7, 8, 9);
Salin selepas log masuk

Tatasusunan mengandungi elemen berulang 1, 2, 3. Sekarang kita mahu mengalih keluar elemen pendua daripada tatasusunan ini. PHP menyediakan beberapa cara berbeza untuk mencapai matlamat ini.

Kaedah 1: Gunakan fungsi array_unique

PHP menyediakan array_unique() fungsi terbina dalam, yang boleh mengalih keluar elemen pendua daripada tatasusunan dengan mudah. Fungsi ini menerima parameter tatasusunan dan mengembalikan tatasusunan baharu yang mengandungi semua elemen unik daripada tatasusunan asal.

Berikut ialah cara menggunakan fungsi array_unique() untuk mengalih keluar elemen pendua daripada tatasusunan:

$unique_array = array_unique($my_array);
Salin selepas log masuk

Fungsi akan mengembalikan hasil berikut:

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
    [5] => 6
    [9] => 7
    [10] => 8
    [11] => 9
)
Salin selepas log masuk

Seperti yang ditunjukkan di atas, tatasusunan baru $unique_array mengandungi semua elemen unik dalam tatasusunan asal $my_array. Elemen pendua 1, 2, 3 telah dialih keluar.

Kaedah 2: Gunakan fungsi array_flip dan array_keys

Idea kaedah ini adalah menggunakan fungsi terbina dalam PHP array_flip() untuk pertukaran nilai kunci, menggunakan nilai asal tatasusunan sebagai nama kunci, memastikan tiada Kebolehulangan, kemudian gunakan fungsi array_keys() untuk mengekstrak nama kunci sebagai elemen tatasusunan baharu.

Berikut ialah contoh kod menggunakan pendekatan ini:

$no_duplicate_array = array_keys(array_flip($my_array));
Salin selepas log masuk

Fungsi ini akan mengembalikan hasil berikut:

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
    [5] => 6
    [6] => 7
    [7] => 8
    [8] => 9
)
Salin selepas log masuk
Salin selepas log masuk

Seperti yang ditunjukkan di atas, tatasusunan baharu $no_duplicate_array mengandungi tatasusunan asal$ Semua elemen unik dalam my_array. Elemen pendua 1, 2, 3 telah dialih keluar.

Kaedah 3: Gunakan gelung dan fungsi in_array

Kaedah ini menggunakan gelung for untuk melintasi tatasusunan asal dan menyimpan nilai ke dalam tatasusunan baharu, dan kemudian gunakan fungsi tatasusunan dalam untuk menyemak sama ada ia sudah wujud dalam tatasusunan baharu Elemen, jika ada, tidak ditambah, jika tidak elemen itu ditambah.

Berikut ialah contoh kod menggunakan pendekatan ini:

$unique_array = array();
foreach ($my_array as $value) {
    if (!in_array($value, $unique_array)) {
        $unique_array[] = $value;
    }
}
Salin selepas log masuk

Fungsi ini akan mengembalikan hasil berikut:

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
    [5] => 6
    [6] => 7
    [7] => 8
    [8] => 9
)
Salin selepas log masuk
Salin selepas log masuk

Seperti yang ditunjukkan di atas, tatasusunan baharu $unique_array mengandungi tatasusunan asal$ Semua elemen unik dalam my_array. Elemen pendua 1, 2, 3 telah dialih keluar.

Adalah penting untuk ambil perhatian bahawa setiap kaedah mempunyai kelebihan dan batasannya sendiri. Menggunakan fungsi array_unique() adalah yang paling mudah dan paling cekap, tetapi boleh menyebabkan beberapa masalah prestasi. Menggunakan fungsi array_flip dan array_keys ialah cara bijak untuk menukar kunci dan nilai, dan berfungsi dengan baik untuk tatasusunan besar. Kaedah manual menggelung dan memeriksa elemen memberikan lebih fleksibiliti dan lebih kawalan langsung ke atas proses penyahduplikasian, tetapi boleh mengakibatkan kod kembung dan tidak cekap.

Akhir sekali, kita perlu memilih kaedah yang berbeza untuk mengalih keluar elemen pendua dalam tatasusunan mengikut situasi yang berbeza. Tidak kira kaedah yang kami pilih untuk digunakan, kami harus sentiasa memastikan kod kami mudah dan cekap. Dengan cara ini anda boleh menulis kod PHP yang lebih baik.

Atas ialah kandungan terperinci php keluarkan pendua daripada tatasusunan. 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