我得到一个项目,并且看到一段代码,如下所示:
wrapper.prop()
在任何情况下,我都输入'd'或其他参数,页面总是返回'not'。 那么,如何输入正确的参数使页面返回“存在”?
答案 0 :(得分:4)
strpos()
永远不会返回TRUE
。如果找到字符串,则返回位置。如果找不到该字符串,则返回FALSE
。因此,您应该比较FALSE
,而不是TRUE
。
if (strpos($orderby, 'd') === false) {
echo "not exists";
} else {
echo "exists";
}
答案 1 :(得分:2)
您的测试并不是说它正在返回false
,只是strpos()
永远不会返回布尔值true
的值。相反,它将返回一个带有找到的字符串位置的整数。通常情况下会是
if(strpos($orderby,'d') !== false){
echo "exists";
}else{
echo "not ";
}
答案 2 :(得分:1)
如果strpos
找到一个匹配项,它将不返回true
,而是返回偏移量-因此您的strpos($orderby,'d')===true
永远不会被击中。
尝试一下:
<?php
$orderby=$_REQUEST['orderby'];
if($o=strpos($orderby,'d')===false){
echo "not ";
}else{
echo "exists at offset $o";
}?>