Dalam pembangunan PHP, selalunya perlu membandingkan sama ada data dalam dua tatasusunan adalah sama. Ini adalah perkara biasa semasa memproses data. Artikel ini akan memperkenalkan beberapa kaedah untuk membandingkan sama ada dua data tatasusunan adalah sama. Saya harap ia dapat membantu pembaca.
fungsi array_diff digunakan untuk membandingkan perbezaan antara dua tatasusunan Jika dua data tatasusunan adalah betul-betul sama, tatasusunan kosong dikembalikan. Penggunaannya adalah seperti berikut:
$arr1 = array('a', 'b', 'c'); $arr2 = array('a', 'b', 'd'); $diff = array_diff($arr1, $arr2); if(empty($diff)){ echo '两个数组相同'; } else { echo '两个数组不同'; }
Hasil keluaran: "Dua tatasusunan adalah berbeza".
fungsi array_intersect digunakan untuk mendapatkan persilangan dua tatasusunan Jika data dalam dua tatasusunan adalah betul-betul sama, tatasusunan asal dikembalikan. Penggunaannya adalah seperti berikut:
$arr1 = array('a', 'b', 'c'); $arr2 = array('a', 'b'); $intersect = array_intersect($arr1, $arr2); if($arr1 === $intersect){ echo '两个数组相同'; } else { echo '两个数组不同'; }
Hasil keluaran: "Dua tatasusunan adalah berbeza".
fungsi array_diff_assoc digunakan untuk membandingkan perbezaan antara dua tatasusunan (termasuk pasangan nilai kunci jika kedua-dua data tatasusunan adalah sama, a tatasusunan kosong dikembalikan. Penggunaannya adalah seperti berikut:
$arr1 = array('a' => 1, 'b' => 2, 'c' => 3); $arr2 = array('a' => 1, 'b' => 4, 'c' => 3); $diff = array_diff_assoc($arr1, $arr2); if(empty($diff)){ echo '两个数组相同'; } else { echo '两个数组不同'; }
Hasil keluaran: "Dua tatasusunan adalah berbeza".
fungsi array_intersect_assoc digunakan untuk mendapatkan persilangan dua tatasusunan (termasuk pasangan nilai kunci jika data dalam dua tatasusunan adalah betul-betul sama , nilai asal dikembalikan. Penggunaannya adalah seperti berikut:
$arr1 = array('a' => 1, 'b' => 2, 'c' => 3); $arr2 = array('a' => 1, 'b' => 2); $intersect = array_intersect_assoc($arr1, $arr2); if($arr1 === $intersect){ echo '两个数组相同'; } else { echo '两个数组不同'; }
Hasil keluaran: "Dua tatasusunan adalah berbeza".
Fungsi bersiri mensiri tatasusunan dan boleh membandingkan dengan mudah sama ada dua tatasusunan adalah sama. Penggunaannya adalah seperti berikut:
$arr1 = array('a' => 1, 'b' => 2, 'c' => 3); $arr2 = array('a' => 1, 'b' => 2, 'c' => 3); if(serialize($arr1) === serialize($arr2)){ echo '两个数组相同'; } else { echo '两个数组不同'; }
Hasil keluaran: "Dua tatasusunan adalah sama".
Fungsi json_encode menukar tatasusunan kepada format json untuk perbandingan yang mudah. Penggunaannya adalah seperti berikut:
$arr1 = array('a' => 1, 'b' => 2, 'c' => 3); $arr2 = array('a' => 1, 'b' => 2, 'c' => 3); if(json_encode($arr1) === json_encode($arr2)){ echo '两个数组相同'; } else { echo '两个数组不同'; }
Hasil keluaran: "Dua tatasusunan adalah sama".
Di atas adalah beberapa kaedah untuk membandingkan sama ada dua data tatasusunan adalah sama Pembangun boleh memilih kaedah yang sesuai mengikut situasi sebenar.
Atas ialah kandungan terperinci Bagaimana untuk membandingkan dua data tatasusunan dalam php untuk melihat sama ada ia adalah data yang sama. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!