kaedah periksa persamaan array php
Dalam PHP, menentukan sama ada kedua -dua tatasusunan adalah sama bermakna unsur -unsur array adalah sama, perintah itu konsisten, dan juga jenis data yang sepadan. Artikel ini akan memperkenalkan beberapa kaedah untuk memeriksa kesamaan array dalam php:
Undang -undang Keganasan
Kaedah ini mula -mula menyusun dua tatasusunan dan kemudian membandingkannya menggunakan pengendali. Susun untuk memastikan bahawa urutan elemen tidak menjejaskan keputusan perbandingan. ==
Contoh:
<?php $array1 = [3, 2, 1]; $array2 = [1, 2, 3]; sort($array1); sort($array2); if ($array1 == $array2) { echo "数组相等"; } else { echo "数组不相等"; } ?>
output:
<code>数组相等</code>
kerumitan masa: o (n log n) Kerumitan ruang: (1)
Gunakan pengendali ==
memeriksa sama ada kedua -dua tatasusunan adalah saiz yang sama dan mengandungi unsur -unsur yang sama, dan perintah itu juga mesti sama. Kaedah ini mudah dan mudah digunakan, tetapi ia tidak ketat dengan jenis data. Sebagai contoh, Integer 3 dan String '3' dianggap sama. ==
Contoh:
<?php $arr1 = [1, 2, 3, 4]; $arr2 = [1, 2, 3, 4]; if ($arr1 == $arr2) { echo "数组相等"; } else { echo "数组不相等"; } ?>
output:
<code>数组相等</code>
kerumitan masa: o (n) Kerumitan ruang: (1)
Gunakan Kaedah array_diff()
mengembalikan array kosong, ini bermakna kedua -dua tatasusunan adalah sama. Kaedah ini sering digunakan untuk membandingkan tatasusunan unsur -unsur yang tidak teratur dan unik. array_diff()
Contoh:
<?php $array1 = [1, 2, 3]; $array2 = [3, 2, 1]; if (empty(array_diff($array1, $array2)) && empty(array_diff($array2, $array1))) { echo "数组相等"; } else { echo "数组不相等"; } ?>
output:
<code>数组相等</code>
kerumitan masa: o (n) Kerumitan ruang: o (n)
Gunakan pengendali ===
operator melakukan perbandingan elemen array yang ketat, ia memeriksa: ===
Contoh:
<?php $array1 = [1, 2, 3, 4]; $array2 = [1, 2, '3', 4]; if ($array1 === $array2) { echo "数组相等"; } else { echo "数组不相等"; } ?>
output:
<code>数组不相等</code>
kerumitan masa: o (n) Kerumitan ruang: (1)
; Untuk array yang tidak teratur, kaedah ===
lebih sesuai. Walaupun kaedah kekerasan boleh mengendalikan tatasusunan yang tidak disengajakan, mereka agak tidak cekap. ==
Atas ialah kandungan terperinci Bagaimana untuk memeriksa sama ada dua tatasusunan sama dengan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!