ホームページ  >  記事  >  バックエンド開発  >  PHP IN_ARRAY関数使用上の注意_PHPチュートリアル

PHP IN_ARRAY関数使用上の注意_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:35:56906ブラウズ

さらに、2 つの値が一致するかどうかを比較する構造を制御するときは、== の代わりに === を使用するようにしてください (もちろん、これも特定のビジネス ロジックに応じてより適切です)。

お兄さん、その理由を説明しましょう
var_dump(in_array(0, array('s' ));

この文の結果は bool(true) です。

in_array は 0 と 's' を比較するため、0 は数値型の 's' は文字列型です。PHP マニュアルの「比較演算子」の章の説明によると、数値と文字列を比較する場合、まず文字列型が数値に変換され、次に比較演算が行われます。 's' を数値に変換した結果は 0 であり、0 == 0 の結果は true なので、in_array(0, array('s', 'ss')) の結果も true になります

in_array の 3 番目のパラメータ strict が true に設定されている場合、値と型が等しいかどうかを判断し、等しい場合は true を返し、そうでない場合は false を返します。
これはただのメモです。


http://www.bkjia.com/PHPjc/322204.html

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/322204.html技術記事また、制御構造内で 2 つの値が一致しているかどうかを比較する場合は、== の代わりに === を使用するようにしてください (もちろん、特定のビジネス ロジックに応じて、これもより適切です)。 .
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。