ホームページ  >  記事  >  バックエンド開発  >  php === と == の違いは何ですか

php === と == の違いは何ですか

藏色散人
藏色散人オリジナル
2021-11-17 10:10:466389ブラウズ

php === と == の違い: 1. PHP では、=== は合同演算子を表し、== は等価演算子を表します; 2. の両側の値が等価演算子が等しい場合、等価演算子の両側の値が等しいが型が異なる場合は true または false を返します。

php === と == の違いは何ですか

#この記事の動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター

php === == 違いは何ですか?

php における == と === の使用法と違い

開発中に数値マッチングの問題が発生し、マッチング時に次のような状況に遭遇します。どう思いますか?結果はどうなるでしょうか?

<?php 
$str = "0dff";
if (0 == $str) {
echo "true";
}else{
echo "false";
}
 
?>

予期せぬことに、上記のプログラムの出力結果は true です。これは、コンパイル時にプログラムのデフォルトが 0 と 0dff に等しいことを意味します。これは、関係演算「==」を実行する場合、演算子の両側のデータ型が一貫している必要があるため、等号の右側の文字列が強制的に整数型 0 に変換されるためです。

これは、一連の弱い型指定言語の欠点でもあります。この問題を解決するために、php には「===」が提供されています。

<?php 
$str = "0dff";
if (0 === $str) {
echo "true";
}else{
echo "false";
}
 
?>

このプログラムの出力は false です。

すべての等号の演算処理は次のとおりです:

1. 等号演算子の両側のデータ型が同じであるかどうかを判定し、同じでない場合は false を返します。

2. すべて等しいか判定 演算子の両辺の値が等しいかどうかを確認し、等しくない場合は false を返します

3. 最後に の AND 演算を実行します以上の2ステップです。 AND 演算の結果を返します。

添付ファイル:

php === と == の違いは何ですか

推奨学習: 「

PHP ビデオ チュートリアル

以上がphp === と == の違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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