Php 为什么使用stripos()的代码不起作用?
stripos()似乎无法正常工作,以下是我的代码:Php 为什么使用stripos()的代码不起作用?,php,string,Php,String,stripos()似乎无法正常工作,以下是我的代码: $regex_blitz = array("#bols", "#Blitz", "#Blitz Ipva", "#detran", "#ipva", "biltz"); foreach($regex_blitz as $blitz) { echo $blitz; echo "</br>"; echo $string; echo "</br>"; if(stripos($strin
$regex_blitz = array("#bols", "#Blitz", "#Blitz Ipva", "#detran", "#ipva", "biltz");
foreach($regex_blitz as $blitz)
{
echo $blitz;
echo "</br>";
echo $string;
echo "</br>";
if(stripos($string, $blitz))
{
echo 'aqui';
}
else
{
echo 'oi';echo "</br>";
}
}
你可以注意到,当$blitz是#blitz时,它应该通过“如果”,帮帮我
刚刚注意到,如果我在字符串中向前移动“#blitz”,它会工作,但我不能这样做,因为它会自动搜索,这是一个错误吗?有人看到了一个大警告标志:
Warning
This function may return Boolean FALSE, but may also return a non-Boolean value
which evaluates to FALSE, such as 0 or "".
有人看到了巨大的警告标志:
Warning
This function may return Boolean FALSE, but may also return a non-Boolean value
which evaluates to FALSE, such as 0 or "".
问题在于,如果匹配项位于字符串开头,stripos将返回0。您需要使用
!==错误
$regex_blitz=数组(“#bols”、“#blitz”、“#blitz Ipva”、“#detran”、“#Ipva”、“biltz”);
foreach($regex_blitz作为$blitz)
{
回声闪电战;
回声“”;
echo$字符串;
回声“”;
if(stripos($string,$blitz)!==false)
{
回声“阿奎”;
}
其他的
{
回音“oi”;回音“”;
}
}
问题在于,如果匹配项位于字符串开头,stripos将返回0。您需要使用!==错误
$regex_blitz=数组(“#bols”、“#blitz”、“#blitz Ipva”、“#detran”、“#Ipva”、“biltz”);
foreach($regex_blitz作为$blitz)
{
回声闪电战;
回声“”;
echo$字符串;
回声“”;
if(stripos($string,$blitz)!==false)
{
回声“阿奎”;
}
其他的
{
回音“oi”;回音“”;
}
}
$regex_blitz = array("#bols", "#Blitz", "#Blitz Ipva", "#detran", "#ipva", "biltz");
foreach($regex_blitz as $blitz)
{
echo $blitz;
echo "</br>";
echo $string;
echo "</br>";
if(stripos($string, $blitz) !== false)
{
echo 'aqui';
}
else
{
echo 'oi';echo "</br>";
}
}