ホームページ > バックエンド開発 > PHPの問題 > PHP は 2 つの配列を比較して、それらが同じかどうかを確認します

PHP は 2 つの配列を比較して、それらが同じかどうかを確認します

王林
リリース: 2023-05-19 19:58:37
オリジナル
696 人が閲覧しました

PHP では、array_diff 関数と array_intersect 関数を使用して、2 つの配列が同じかどうかを比較できます。同時に、== または === 演算子を使用して、2 つの配列が等しいかどうかを比較することもできます。

  1. array_diff 関数

array_diff この関数は、2 つの配列の違いを比較することができます。つまり、違いを見つけることができます。配列内に存在するが 2 番目の配列には存在しない最初の要素の間。

サンプル コード:

$array1 = array(1, 2, 3);
$array2 = array(1, 3, 4);

if (count(array_diff($array1, $array2)) == 0 && count(array_diff($array2, $array1)) == 0) {
    echo "两个数组相同";
} else {
    echo "两个数组不同";
}
ログイン後にコピー

出力結果は次のとおりです: 2 つの配列は異なります これは、要素 2 が最初の配列には存在しますが、2 番目の配列には存在しないためです。

  1. array_intersect 関数

array_intersect この関数は、2 つの配列の交差部分を比較します。つまり、交差部分を見つけます。 2 番目の配列に表示され、2 番目の配列にも存在する最初の配列要素の数。

サンプル コード:

$array1 = array(1, 2, 3);
$array2 = array(1, 3, 4);

if (count(array_intersect($array1, $array2)) == count($array1) && count(array_intersect($array2, $array1)) == count($array2)) {
    echo "两个数组相同";
} else {
    echo "两个数组不同";
}
ログイン後にコピー

出力結果は次のとおりです: 2 つの配列は異なります これは、要素 2 が最初の配列には存在しますが、2 番目の配列には存在しないためです。

  1. == 演算子と === 演算子

== PHP 演算子の操作では、次のことが可能です。 2 つの配列の値が等しいかどうかを比較し、=== 演算子は 2 つの配列の値と型が等しいかどうかを比較できます。

サンプルコード:

$array1 = array(1, 2, 3);
$array2 = array(1, 3, 2);

if ($array1 == $array2) {
    echo "两个数组值相同";
} else {
    echo "两个数组值不同";
}

if ($array1 === $array2) {
    echo "两个数组值和类型相同";
} else {
    echo "两个数组值和类型不同";
}
ログイン後にコピー

出力結果は次のとおりです: 2 つの配列の値は同じです2 つの配列の値と型は異なります。 2 番目の配列の要素は順序は異なっていますが、値は同じであるため、等しいかどうかを比較するために == 演算子が使用され、比較には === 演算子が使用されます。不平等を比較します。

概要:

PHP では、2 つの配列が同じかどうかを比較するために、array_diff 関数と array_intersect 関数、および == および === 演算子。関数比較を使用する場合は要素の順序に注意する必要があり、演算子比較を使用する場合は値と型の問題に注意する必要があることに注意してください。実際のアプリケーションでは、ニーズに応じて適切な方法を選択してください。

以上がPHP は 2 つの配列を比較して、それらが同じかどうかを確認しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート