Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menentukan sama ada terdapat nilai yang sama dalam tatasusunan dalam php

Bagaimana untuk menentukan sama ada terdapat nilai yang sama dalam tatasusunan dalam php

PHPz
PHPzasal
2023-04-26 09:07:341079semak imbas

Dalam PHP, kita boleh menggunakan beberapa fungsi untuk menentukan sama ada nilai yang sama wujud dalam tatasusunan. Artikel ini akan memperkenalkan beberapa kaedah untuk menentukan sama ada nilai yang sama wujud dalam tatasusunan.

Kaedah 1: Gunakan fungsi in_array()

Dalam PHP, kita boleh menggunakan fungsi in_array() untuk menentukan sama ada nilai wujud dalam tatasusunan. Fungsi ini kembali benar jika tatasusunan mengandungi nilai yang sama.

Berikut ialah kod sampel yang menggunakan fungsi in_array() untuk menentukan sama ada nilai yang sama wujud dalam tatasusunan:

$array = array("apple", "banana", "orange", "apple");
if (in_array("apple", $array)) {
    echo "Array contains apple";
} else {
    echo "Array does not contain apple";
}

Dalam contoh di atas, kami mula-mula menentukan tatasusunan yang mengandungi nilai yang sama, Kemudian gunakan fungsi in_array() untuk menentukan sama ada tatasusunan mengandungi nilai "epal". Jika tatasusunan mengandungi nilai "epal", keluarkan "Array mengandungi epal", sebaliknya keluarkan "Array tidak mengandungi epal".

Kaedah 2: Gunakan fungsi array_count_values()

Gunakan fungsi array_count_values() untuk mengira bilangan kejadian setiap nilai dalam tatasusunan. Jika nilai yang sama wujud dalam tatasusunan, fungsi itu mengembalikan tatasusunan bersekutu yang mengandungi nilai yang sama dan bilangan kejadiannya.

Berikut ialah kod sampel yang menggunakan fungsi array_count_values() untuk menentukan sama ada nilai yang sama wujud dalam tatasusunan:

$array = array("apple", "banana", "orange", "apple");
$count = array_count_values($array);
if (max($count) > 1) {
    echo "Array contains duplicate values";
} else {
    echo "Array does not contain duplicate values";
}

Dalam contoh di atas, kami mula-mula menentukan tatasusunan yang mengandungi nilai yang sama, Kemudian gunakan fungsi array_count_values() untuk mengira bilangan kejadian setiap nilai dalam tatasusunan. Jika nilai maksimum adalah lebih besar daripada 1, ini bermakna nilai yang sama wujud dalam tatasusunan, dan "Array mengandungi nilai pendua" adalah output.

Kaedah 3: Gunakan fungsi array_unique() dan fungsi count()

Kita juga boleh menggunakan fungsi array_unique() untuk mengalih keluar nilai pendua dalam tatasusunan, dan menggunakan kiraan () berfungsi untuk mengira panjang tatasusunan. Jika nilai yang sama wujud dalam tatasusunan, panjang tatasusunan selepas penyahduplikasian adalah berbeza daripada panjang tatasusunan asal.

Berikut ialah kod sampel yang menggunakan fungsi array_unique() dan fungsi count() untuk menentukan sama ada nilai yang sama wujud dalam tatasusunan:

$array = array("apple", "banana", "orange", "apple");
$unique = array_unique($array);
if (count($array) == count($unique)) {
    echo "Array does not contain duplicate values";
} else {
    echo "Array contains duplicate values";
}

Dalam contoh di atas, kita mula-mula mentakrifkan Tatasusunan yang mengandungi nilai yang sama, kemudian gunakan fungsi array_unique() untuk mengalih keluar nilai pendua dalam tatasusunan, dan gunakan fungsi count() untuk mengira panjang tatasusunan. Jika panjang selepas penyahduplikasian adalah sama dengan panjang tatasusunan asal, ini bermakna nilai yang sama tidak wujud dalam tatasusunan, dan "Array tidak mengandungi nilai pendua" adalah output keluaran.

Melalui pengenalan tiga kaedah di atas, kita boleh memilih kaedah yang sesuai mengikut keperluan kita untuk menentukan sama ada nilai yang sama wujud dalam tatasusunan.

Atas ialah kandungan terperinci Bagaimana untuk menentukan sama ada terdapat nilai yang sama dalam tatasusunan 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