ホームページ >バックエンド開発 >PHPの問題 >PHPで2つの配列が等しいかどうかを判断する方法

PHPで2つの配列が等しいかどうかを判断する方法

PHPz
PHPzオリジナル
2023-04-23 09:10:331189ブラウズ

PHP では、2 つの配列が等しいかどうかを判断する方法がいくつかあります。次に、2 つの一般的な方法を紹介します:

方法 1: == == を使用します。 =演算子

PHP では、== 演算子と === 演算子を使用して、2 つの配列が等しいかどうかを比較できます。これら 2 つの演算子の違いは次のとおりです:

  • == 演算子は等価比較を示し、両側の変数の値が等しい場合、結果は # になります。 ##true 、それ以外の場合、結果は false になります。
  • === 演算子は合同比較を表します。両側の変数の型と値が等しい場合、結果は true となり、そうでない場合は、結果は false です。
このメソッドを使用するときは、いくつかの点に注意する必要があります。

    配列内の要素の順序も比較されます。
  • 単純な値の比較はそれらの値を比較することであり、オブジェクトと配列の比較はそれらの参照を比較することです。つまり、等しいとみなされるには、それらが同じオブジェクトまたは配列インスタンスである必要があります。
  • 2 つの配列は、両方の配列のキーと値が同じである場合にのみ等しいとみなされます。
次は、

== 演算子を使用して 2 つの配列が等しいかどうかを比較するサンプル コードです:

$arr1 = array(1,2,3);
$arr2 = array(1,3,2);

if ($arr1 == $arr2) {
    echo "两个数组相等";
} else {
    echo "两个数组不相等";
}
実行結果:

两个数组不相等
以下 これは、

=== 演算子を使用して 2 つの配列が等しいかどうかを比較するサンプル コードです:

$arr1 = array(1,2,3);
$arr2 = array(1,2,3);

if ($arr1 === $arr2) {
    echo "两个数组相等";
} else {
    echo "两个数组不相等";
}
実行結果:

两个数组相等
方法 2: を使用します。

array_diff() Function

array_diff()この関数は、配列の差分セットを計算するために使用され、最初の配列には存在するが存在しない値を返します。他の配列にも存在します。 2 つの配列が等しい場合、それらの差は空の配列である必要があります。したがって、array_diff() 関数を使用して、2 つの配列が等しいかどうかを判断できます。

具体的な手順は次のとおりです。

    2 つの配列の差を計算します。
  1. 差分セットの長さを判断します。それが 0 の場合、2 つの配列は等しく、そうでない場合は等しくありません。
次は、

array_diff() 関数を使用して 2 つの配列が等しいかどうかを比較するサンプル コードです:

$arr1 = array(1,2,3);
$arr2 = array(1,3,2);

$diff = array_diff($arr1, $arr2);

if (count($diff) == 0) {
    echo "两个数组相等";
} else {
    echo "两个数组不相等";
}
実行結果:

两个数组相等
This この方法の利点は、配列内の要素の順序を無視できることです。ただし、同じキーと値のペアが配列内に存在する場合、このメソッドは誤った結果を生成する可能性があることに注意することが重要です。したがって、実際の使用では、特定の状況に応じて 2 つの配列が等しいかどうかを判断する適切な方法を選択する必要があります。

以上がPHPで2つの配列が等しいかどうかを判断する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。