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 意味が変わり、最初の文字が「:」かどうかを判定するようになります