$str[0]===$tokenだと$strがヌル文字列のときnotice出るんですけど

タイトルのようなことをdavidに言われてしまった。notice消すためにstrlen入れたら遅くなし読みにくいよねと。そのままではやりきれないので、こんなことをしてみた。

[senna@vine senna]$ time php -r '$str="abaed"; $token="a"; for($i=0; $i < 1000000; $i++){ isset($str[0]) && $str[0] === $token;}'

real    0m1.959s
user    0m1.940s
sys     0m0.020s
[senna@vine senna]$ time php -r '$str=5; $token="a"; for($i=0; $i < 1000000; $i++){ isset($str[0]) && $str[0] === $token;}'

real    0m0.969s
user    0m0.950s
sys     0m0.020s

ただ、これだと$str=array($token);のとき通っちゃうんだよねー。