ホームページ  >  記事  >  バックエンド開発  >  これら 2 つの書き方は同等ですか?

これら 2 つの書き方は同等ですか?

WBOY
WBOYオリジナル
2016-06-23 13:34:161129ブラウズ

strpos($tplpath,':') !== false
strpos($tplpath,':') !== " "
または strpos($tplpath,':') !== NULL
または strpos($tplpath ,':') !== 0
上記はすべて同等ですか?


ディスカッションへの返信 (解決策)

同等ではありません!
strpos 関数、成功すれば 0 からのオフセットを返し、失敗すれば false を返す
!== は等しくないので、比較するときにデータ型と一緒に比較される

strpos($tplpath,':') !== false これは正しい
strpos($tplpath,':') !== " " strpos は数値または論理 false を返します。条件は常に true です。
strpos($tplpath,':') != = NULL 同上
strpos($tplpath,':') !== 0 意味が変わり、最初の文字が「:」かどうかを判定するようになります

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