Dalam PHP, terdapat beberapa cara untuk menentukan sama ada dua tatasusunan adalah sama Perkara berikut akan memperkenalkan dua kaedah biasa:
Kaedah 1: Gunakan operator ==
dan ===
Dalam PHP, anda boleh menggunakan operator
dan ==
untuk membandingkan dua tatasusunan untuk kesamaan. Perbezaan antara kedua-dua operator ini adalah seperti berikut: ===
- operator, yang mewakili perbandingan kesamaan Jika nilai pembolehubah pada kedua-dua belah adalah sama, hasilnya ialah
==
, jika tidak, hasilnya adalah true
. Operator false
- mewakili perbandingan yang kongruen Jika jenis dan nilai pembolehubah pada kedua-dua belah adalah sama, hasilnya adalah
===
, jika tidak, hasilnya ialah true
. false
Anda perlu memberi perhatian kepada beberapa perkara apabila menggunakan kaedah ini:
Susunan elemen dalam tatasusunan juga akan dibandingkan. - Perbandingan nilai mudah adalah untuk membandingkan nilainya, dan perbandingan objek dan tatasusunan adalah untuk membandingkan rujukannya, yang bermaksud bahawa ia mestilah objek atau contoh tatasusunan yang sama untuk dianggap sama.
- Dua tatasusunan dianggap sama hanya jika kunci dan nilai dalam kedua-dua tatasusunan adalah sama.
-
Berikut ialah kod sampel yang menggunakan operator
untuk membandingkan sama ada dua tatasusunan adalah sama: ==
$arr1 = array(1,2,3);
$arr2 = array(1,3,2);
if ($arr1 == $arr2) {
echo "两个数组相等";
} else {
echo "两个数组不相等";
}
Salin selepas log masuk
Hasil berjalan:
两个数组不相等
Salin selepas log masuk
Berikut ialah Contoh kod untuk menggunakan operator
untuk membandingkan sama ada dua tatasusunan adalah sama: ===
$arr1 = array(1,2,3);
$arr2 = array(1,2,3);
if ($arr1 === $arr2) {
echo "两个数组相等";
} else {
echo "两个数组不相等";
}
Salin selepas log masuk
Hasil berjalan:
两个数组相等
Salin selepas log masuk
Salin selepas log masuk
Kaedah 2: Gunakan
fungsi array_diff()
Fungsi ini digunakan untuk mengira perbezaan tatasusunan, mengembalikan nilai yang wujud dalam tatasusunan pertama tetapi tidak wujud dalam tatasusunan lain. Jika dua tatasusunan adalah sama, perbezaannya haruslah tatasusunan kosong. Oleh itu, anda boleh menggunakan fungsi array_diff()
untuk menentukan sama ada dua tatasusunan adalah sama. array_diff()
Langkah khusus adalah seperti berikut:
Kira perbezaan antara dua tatasusunan. - Nilai panjang set perbezaan Jika 0, maka kedua-dua tatasusunan adalah sama, jika tidak ia tidak sama.
-
Berikut ialah contoh kod yang menggunakan fungsi
untuk membandingkan sama ada dua tatasusunan adalah sama: array_diff()
$arr1 = array(1,2,3);
$arr2 = array(1,3,2);
$diff = array_diff($arr1, $arr2);
if (count($diff) == 0) {
echo "两个数组相等";
} else {
echo "两个数组不相等";
}
Salin selepas log masuk
Hasil berjalan:
两个数组相等
Salin selepas log masuk
Salin selepas log masuk
Kaedah ini Kelebihannya ialah susunan elemen dalam tatasusunan boleh diabaikan. Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa kaedah ini mungkin menghasilkan keputusan yang salah jika pasangan nilai kunci yang sama wujud dalam tatasusunan. Oleh itu, dalam penggunaan sebenar, adalah perlu untuk memilih kaedah yang sesuai untuk menentukan sama ada dua tatasusunan adalah sama mengikut situasi tertentu.
Atas ialah kandungan terperinci Bagaimana untuk menentukan sama ada dua tatasusunan adalah sama dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!