中級 › strpos()が0を返すと if文でfalseと同じに扱われてしまう › パターン3
strpos()が0を返すと if文でfalseと同じに扱われてしまう
strpos()は文字列が先頭(添字0)で見つかった場合、戻り値の0を返します。
1 <?php 2 $url = "https://example.com"; 3 $pos = strpos($url, "https"); 4 if (______________) { ^ 5 echo "secure"; 6 } else { 7 echo "not secure"; 8 }
出力: not secure期待: secure (エラーにはなりません)
空欄を埋めて実行を通す
"https"は0番目で見つかるため$posは0です。if ($pos)はfalsyな0として扱ってしまうので、!==falseで比較する必要があります。
次の問題