Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk menentukan sama ada terdapat unsur pendua dalam tatasusunan dalam php

Bagaimana untuk menentukan sama ada terdapat unsur pendua dalam tatasusunan dalam php

PHPz
Lepaskan: 2023-03-24 17:36:01
asal
1482 orang telah melayarinya

PHP ialah bahasa skrip yang digunakan secara meluas yang digunakan secara meluas dalam pembangunan web. Dalam pembangunan PHP, kami sering melibatkan jenis data tatasusunan. Menentukan sama ada terdapat unsur pendua dalam tatasusunan juga merupakan tugas yang sangat penting. Dalam artikel ini, kita akan membincangkan cara untuk menentukan sama ada terdapat unsur pendua dalam tatasusunan menggunakan PHP.

Gunakan fungsi array_count_values() untuk statistik

Kaedah lain ialah menggunakan fungsi array_count_values() untuk statistik, yang akan mengembalikan tatasusunan baharu, di mana Mengandungi bilangan kejadian setiap elemen. Kita boleh lelaran melalui tatasusunan baharu dan menentukan elemen yang muncul lebih daripada 1 sebagai elemen pendua.

Berikut ialah kod sampel:

<?php

$arr = array(&#39;apple&#39;, &#39;banana&#39;, &#39;orange&#39;, &#39;orange&#39;, &#39;orange&#39;);
$arr_new = array_count_values($arr);

foreach($arr_new as $key => $value) {
    if($value != 1) {
        unset($arr[$key]);
    }
}

print_r($arr);
?>
Salin selepas log masuk

Hasil output ialah:

Array
(
    [0] => apple
    [1] => banana
    [2] => orange
)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Kaedah menggunakan fungsi array_count_values() untuk statistik ialah juga sangat baik, dengan kepraktisan tertentu.

Meluaskan pengetahuan: Alih keluar pendua

  • Gunakan fungsi array_unique() untuk mengalih keluar elemen pendua

fungsi array_unique() ialah fungsi yang telah dikapsulkan dalam PHP untuk mengalih keluar elemen pendua daripada tatasusunan Struktur sintaksnya adalah seperti berikut:

array array_unique ( array $array [, int $sort_flags = SORT_STRING ] )
Salin selepas log masuk

Fungsi ini akan mengembalikan yang baharu. tatasusunan selepas mengalih keluar elemen pendua Antaranya, sort_flags ialah parameter pilihan yang digunakan untuk menetapkan peraturan pengisihan. Secara lalai, fungsi melakukan perbandingan rentetan semua nilai dan menyusunnya dalam tertib menaik. Kita boleh memilih parameter untuk diisih mengikut keperluan kita.

Berikut ialah contoh:

<?php

$arr = array(&#39;apple&#39;, &#39;banana&#39;, &#39;orange&#39;, &#39;orange&#39;, &#39;orange&#39;);
$arr_new = array_unique($arr);
print_r($arr_new);
?>
Salin selepas log masuk

Hasil output ialah:

Array
(
    [0] => apple
    [1] => banana
    [2] => orange
)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Seperti yang anda lihat, fungsi ini berjaya mengalih keluar elemen pendua daripada tatasusunan itu.

  • Menggunakan kaedah penyahduplikasi gelung

Dalam pembangunan PHP, kita boleh menggunakan gelung untuk melintasi tatasusunan dan Lakukan operasi penyahduplikasian tepat pada masanya. Langkah-langkah khusus adalah seperti berikut:

1 Dapatkan panjang tatasusunan
Kita boleh menggunakan fungsi count() untuk mendapatkan panjang tatasusunan.

2. Gelung melalui tatasusunan
Gunakan pernyataan gelung untuk melintasi tatasusunan Pada masa ini, anda boleh menggunakan dua pembolehubah i dan j, di mana i digunakan untuk menunjuk kepada elemen semasa yang dikendalikan on, dan j digunakan untuk menunjuk ke elemen seterusnya.

3. Tentukan sama ada terdapat elemen pendua
Di dalam gelung, kita boleh menggunakan pernyataan if untuk menilai Jika elemen i sama dengan elemen j, ia dianggap terdapat unsur pendua , dan fungsi unset() boleh digunakan untuk memadamkannya.

Berikut ialah kod sampel:

<?php

$arr = array(&#39;apple&#39;, &#39;banana&#39;, &#39;orange&#39;, &#39;orange&#39;, &#39;orange&#39;);
$len = count($arr);

for($i=0; $i<$len-1; $i++) {
    for($j=$i+1; $j<$len; $j++) {
        if($arr[$i] == $arr[$j]) {
            unset($arr[$j]);
        }
    }
}

print_r($arr);
?>
Salin selepas log masuk

Hasil output ialah:

Array
(
    [0] => apple
    [1] => banana
    [2] => orange
)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Seperti yang anda lihat, penyahduplikasian dilakukan melalui gelung Kesannya juga cukup bagus

Atas ialah kandungan terperinci Bagaimana untuk menentukan sama ada terdapat unsur pendua dalam tatasusunan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
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