Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk menentukan sama ada nilai dalam tatasusunan adalah sama dalam php

Bagaimana untuk menentukan sama ada nilai dalam tatasusunan adalah sama dalam php

PHPz
Lepaskan: 2023-04-19 13:56:43
asal
995 orang telah melayarinya

PHP ialah bahasa pengaturcaraan sebelah pelayan yang sangat popular yang boleh mengendalikan pelbagai jenis data, termasuk tatasusunan. Dalam PHP, ia adalah operasi yang sangat biasa untuk menentukan sama ada nilai dalam tatasusunan adalah sama Artikel ini akan memperkenalkan beberapa kaedah yang biasa digunakan dalam PHP untuk mencapai fungsi ini.

Kaedah 1: Gunakan fungsi array_unique

Fungsi array_unique mengalih keluar nilai pendua dari tatasusunan dan mengembalikan tatasusunan baharu. Jika terdapat nilai pendua dalam tatasusunan asal, nilai tersebut hanya akan muncul sekali dalam tatasusunan baharu. Anda boleh menggunakan ciri ini untuk menentukan sama ada nilai dalam tatasusunan adalah sama. Contohnya:

$array = array(1, 2, 3, 3, 4);
$newArray = array_unique($array);

if(count($newArray) == 1){
    echo '数组中的值都一样';
}else{
    echo '数组中的值不一样';
}
Salin selepas log masuk

Dalam kod di atas, kami mula-mula mentakrifkan tatasusunan $array, yang mengandungi beberapa nilai yang sama. Kemudian gunakan array_unique untuk menyahduplikasi tatasusunan dan tetapkan hasilnya kepada pembolehubah $newArray. Akhir sekali, gunakan fungsi kira untuk mendapatkan panjang tatasusunan baharu Jika panjangnya ialah 1, ini bermakna semua nilai dalam tatasusunan asal adalah sama.

Kaedah 2: Gunakan fungsi array_diff

Fungsi array_diff adalah untuk membandingkan perbezaan antara dua tatasusunan dan mengembalikan tatasusunan baharu. Jika terdapat nilai dalam tatasusunan pertama tetapi tidak dalam tatasusunan kedua, nilai itu akan dikekalkan dalam tatasusunan baharu. Kita boleh menggunakan ciri ini untuk menentukan sama ada nilai dalam tatasusunan adalah sama. Contohnya:

$array = array(1, 2, 3, 3, 4);
$newArray = array_diff($array, array_unique($array));

if(count($newArray) == 0){
    echo '数组中的值都一样';
}else{
    echo '数组中的值不一样';
}
Salin selepas log masuk

Dalam kod di atas, kami mula-mula mentakrifkan tatasusunan $array, yang mengandungi beberapa nilai yang sama. Kemudian gunakan array_unique untuk menyahduplikasi tatasusunan dan hantar hasilnya kepada fungsi array_diff untuk perbandingan. Jika tatasusunan baharu yang dikembalikan kosong, ini bermakna semua nilai dalam tatasusunan asal adalah sama.

Kaedah 3: Gunakan gelung for

Gunakan gelung for untuk melintasi setiap nilai dalam tatasusunan, dan kemudian tentukan sama ada nilai dalam tatasusunan adalah sama dengan perbandingan. Contohnya:

$array = array(1, 2, 3, 3, 4);
$count = count($array);
$isTheSame = true;

for($i = 0; $i < $count - 1; $i++){
    if($array[$i] != $array[$i + 1]){
        $isTheSame = false;
        break;
    }
}

if($isTheSame){
    echo '数组中的值都一样';
}else{
    echo '数组中的值不一样';
}
Salin selepas log masuk

Dalam kod di atas, kami mula-mula mentakrifkan tatasusunan $array, yang mengandungi beberapa nilai yang sama. Kemudian gunakan fungsi kiraan untuk mendapatkan panjang tatasusunan dan tetapkan hasilnya kepada pembolehubah $count. Seterusnya, kami mengulangi setiap nilai dalam tatasusunan melalui gelung for dan membandingkan sama ada dua nilai bersebelahan adalah sama. Jika terdapat nilai yang tidak sama, tetapkan pembolehubah $isTheSame kepada palsu dan keluar dari gelung. Akhir sekali, berdasarkan nilai pembolehubah $isTheSame, tentukan sama ada nilai dalam tatasusunan adalah sama.

Kaedah 4: Gunakan fungsi array_count_values ​​

Fungsi fungsi array_count_values ​​adalah untuk mengira bilangan kejadian setiap nilai dalam tatasusunan dan mengembalikan tatasusunan baru, di mana kunci ialah nilai dalam tatasusunan asal dan nilainya ialah Bilangan kejadian. Jika terdapat hanya satu nilai dalam tatasusunan asal, tatasusunan baharu selepas statistik hanya akan mengandungi satu elemen. Kita boleh menggunakan ciri ini untuk menentukan sama ada nilai dalam tatasusunan adalah sama. Contohnya:

$array = array(1, 2, 3, 3, 4);
$newArray = array_count_values($array);

if(count($newArray) == 1){
    echo '数组中的值都一样';
}else{
    echo '数组中的值不一样';
}
Salin selepas log masuk

Dalam kod di atas, kami mula-mula mentakrifkan tatasusunan $array, yang mengandungi beberapa nilai yang sama. Kemudian gunakan fungsi array_count_values ​​untuk mengira tatasusunan dan tetapkan hasilnya kepada pembolehubah $newArray. Akhir sekali, gunakan fungsi kira untuk mendapatkan panjang tatasusunan baharu Jika panjangnya ialah 1, ini bermakna semua nilai dalam tatasusunan asal adalah sama.

Ringkasan

Dengan menggunakan mana-mana kaedah di atas, anda boleh dengan mudah menentukan sama ada nilai dalam tatasusunan dalam PHP adalah sama. Memilih kaedah yang sesuai berdasarkan situasi sebenar akan membantu meningkatkan kesederhanaan dan kebolehbacaan kod.

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