Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk menyemak sama ada tatasusunan mengandungi elemen yang sama dalam php

Bagaimana untuk menyemak sama ada tatasusunan mengandungi elemen yang sama dalam php

PHPz
Lepaskan: 2023-04-25 10:15:57
asal
812 orang telah melayarinya

PHP ialah bahasa dinamik ditaip kuat yang sangat sesuai untuk memproses data jenis tatasusunan. Dalam pembangunan sebenar, kita sering perlu menyemak sama ada tatasusunan mengandungi elemen yang sama. Keperluan ini mungkin melibatkan banyak aspek, seperti penyahduplikasian data, penapisan data, dsb. Di bawah, artikel ini menerangkan cara menyemak sama ada tatasusunan mengandungi elemen yang sama menggunakan beberapa kaedah biasa dalam PHP.

1. Gunakan fungsi array_unique untuk mengalih keluar elemen pendua daripada tatasusunan

Dalam PHP, anda boleh menggunakan fungsi array_unique untuk mengalih keluar elemen pendua daripada tatasusunan. Fungsi ini boleh menerima tatasusunan sebagai parameter dan mengembalikan tatasusunan baharu yang tidak mengandungi unsur pendua.

Berikut ialah kod sampel khusus:

$originArray = array(1, 2, 3, 2, 4, 5, 4);
$newArray = array_unique($originArray);
print_r($newArray);
Salin selepas log masuk

Selepas melaksanakan kod di atas, anda boleh mendapatkan hasil output:

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

Seperti yang anda boleh lihat daripada keputusan di atas, elemen pendua dalam tatasusunan asal berjaya dinyahduplikasi, dan tatasusunan baharu selepas penyahduplikasian adalah output.

2. Gunakan fungsi array_count_values ​​​​untuk mengira bilangan kejadian elemen

Dalam PHP, anda juga boleh menggunakan array_count_values ​​​​fungsi untuk mengira bilangan kejadian setiap elemen dalam tatasusunan. Fungsi ini boleh menerima tatasusunan sebagai parameter dan mengembalikan tatasusunan bersekutu baharu, di mana setiap elemen ialah nilai yang berbeza dalam tatasusunan asal, dan kunci tatasusunan bersekutu ialah bilangan kali nilai itu muncul dalam tatasusunan asal.

Kod sampel khusus diberikan di bawah:

$originArray = array(1, 2, 3, 2, 4, 5, 4);
$newArray = array_count_values($originArray);
print_r($newArray);
Salin selepas log masuk

Selepas melaksanakan kod di atas, hasil output boleh diperolehi:

Array
(
    [1] => 1
    [2] => 2
    [3] => 1
    [4] => 2
    [5] => 1
)
Salin selepas log masuk

Seperti yang dapat dilihat daripada keputusan di atas Pada ketika ini, bilangan kejadian setiap elemen dalam tatasusunan asal dikira, dan tatasusunan bersekutu adalah output. Dalam tatasusunan bersekutu ini, kunci ialah nilai dalam tatasusunan asal, dan nilai ialah bilangan kali elemen itu berlaku dalam tatasusunan asal.

3. Gunakan fungsi array_diff untuk membandingkan tatasusunan

Dalam PHP, anda juga boleh menggunakan fungsi array_diff untuk membandingkan sama ada dua tatasusunan mempunyai elemen yang sama. Fungsi ini boleh menerima dua tatasusunan sebagai parameter dan mengembalikan tatasusunan baharu yang mengandungi nilai berbeza dalam dua tatasusunan.

Kod sampel khusus diberikan di bawah:

$originArray1 = array(1, 2, 3, 2, 4, 5, 4);
$originArray2 = array(6, 7, 8, 9, 10);
$diffArray = array_diff($originArray1, $originArray2);
print_r($diffArray);
Salin selepas log masuk

Selepas melaksanakan kod di atas, hasil output boleh diperolehi:

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

Seperti yang dapat dilihat daripada keputusan di atas, elemen yang sama wujud dalam kedua-dua tatasusunan, dan hanya unsur-unsur yang muncul dalam tatasusunan pertama tetapi tidak dalam tatasusunan kedua adalah output dalam tatasusunan baharu.

4. Gunakan fungsi array_intersect untuk membandingkan tatasusunan

Serupa dengan fungsi array_diff, PHP juga menyediakan fungsi array_intersect untuk membandingkan sama ada terdapat unsur yang sama antara dua tatasusunan. Fungsi ini menerima dua tatasusunan sebagai parameter dan mengembalikan tatasusunan baharu yang mengandungi persilangan dua tatasusunan.

Berikut ialah kod sampel khusus:

$originArray1 = array(1, 2, 3, 2, 4, 5, 4);
$originArray2 = array(2, 4, 5, 6, 7);
$intersectArray = array_intersect($originArray1, $originArray2);
print_r($intersectArray);
Salin selepas log masuk

Selepas melaksanakan kod di atas, anda boleh mendapatkan hasil output:

Array
(
    [1] => 2
    [4] => 4
    [5] => 5
)
Salin selepas log masuk

Seperti yang anda boleh lihat daripada keputusan di atas, unsur yang sama wujud dalam dua tatasusunan, dan hanya unsur-unsur yang muncul dalam kedua-dua tatasusunan adalah output dalam tatasusunan baharu.

Di atas ialah beberapa fungsi PHP biasa yang digunakan untuk menyemak sama ada tatasusunan mengandungi elemen yang sama, termasuk penyahduplikasi tatasusunan, mengira bilangan kejadian unsur, membandingkan tatasusunan, dsb. Sudah tentu, fungsi PHP lain atau fungsi tersuai juga boleh digunakan untuk mencapai tujuan yang sama dalam aplikasi sebenar.

Atas ialah kandungan terperinci Bagaimana untuk menyemak sama ada tatasusunan mengandungi elemen yang sama dalam php. 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