Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk mengalih keluar tatasusunan pendua dalam php

Bagaimana untuk mengalih keluar tatasusunan pendua dalam php

PHPz
PHPzasal
2023-04-18 10:20:24517semak imbas

Dalam pembangunan PHP, kadangkala kita menghadapi situasi di mana kita perlu mengalih keluar elemen pendua daripada tatasusunan. Berikut ialah beberapa kaedah untuk mengalih keluar elemen pendua daripada tatasusunan:

1 Gunakan fungsi array_unique()

array_unique() untuk mengalih keluar elemen pendua daripada tatasusunan dan mengembalikan tatasusunan baharu tanpa unsur pendua. .

Kod sampel:

$arr = array('apple', 'banana', 'orange', 'apple');
print_r(array_unique($arr));

Hasil keluaran:

Array
(
    [0] => apple
    [1] => banana
    [2] => orange
)

2 Gunakan gelung foreach

Gunakan gelung foreach untuk melintasi tatasusunan, untuk. setiap Elemen dinilai sama ada ia sudah wujud dalam tatasusunan baru. Jika ia tidak wujud, ia akan ditambah kepada tatasusunan baharu. Kaedah ini agak mudah, tetapi prestasi mungkin tidak begitu tinggi untuk tatasusunan berskala besar.

Kod contoh:

$arr = array('apple', 'banana', 'orange', 'apple');
$newArr = array();
foreach ($arr as $value) {
    if (!in_array($value, $newArr)) {
        $newArr[] = $value;
    }
}
print_r($newArr);

Hasil keluaran:

Array
(
    [0] => apple
    [1] => banana
    [2] => orange
)

3 Gunakan fungsi array_flip() dan array_keys()

untuk menukar. Kekunci dan nilai tatasusunan diterbalikkan, pendua dikeluarkan dan kemudian diterbalikkan semula. Kaedah ini boleh digunakan apabila nilai tatasusunan ialah jenis ringkas (seperti rentetan, nombor, dll.), tetapi tidak boleh digunakan apabila nilai tatasusunan ialah jenis kompleks seperti objek.

Kod sampel:

$arr = array('apple', 'banana', 'orange', 'apple');
$newArr = array_flip(array_keys(array_flip($arr)));
print_r($newArr);

Hasil keluaran:

Array
(
    [0] => apple
    [1] => banana
    [2] => orange
)

Ringkasan

Tiga kaedah di atas boleh berjaya mengalih keluar elemen pendua dalam tatasusunan . Kaedah mana yang hendak digunakan boleh dipilih mengikut situasi sebenar. Jika keperluan prestasi untuk tatasusunan tidak tinggi, anda boleh menggunakan gelung foreach Jika prestasi tinggi diperlukan, adalah disyorkan untuk menggunakan array_unique() atau menggunakan fungsi array_flip() dan array_keys().

Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar tatasusunan pendua dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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