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