PHP $_POST['username']!=null这个还有必要写吗?isset是不是包含了呢?
if(isset($_POST['username'])&&$_POST['username']!=null){$where['username']=array('lik...
if(isset($_POST['username']) && $_POST['username']!=null){
$where['username']=array('like',"%{$_POST['username']}%");
}
if(isset($_POST['sex']) && $_POST['sex']!=null){
$where['sex']=array('eq',$_POST['sex']);
} 展开
$where['username']=array('like',"%{$_POST['username']}%");
}
if(isset($_POST['sex']) && $_POST['sex']!=null){
$where['sex']=array('eq',$_POST['sex']);
} 展开
展开全部
没有必要加,因为如果isset返回的结果是TRUE,那么后面的$_POST['sex']的值一定不是null。
追问
觉得你说的很有道理,我也这么认为的,但是不知道为什么那么多人强调要加不为空判断。
追答
这个根据实际情况定,不是必须要加的,如果判断了是否为空,那就没有必要用isset了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
isset只是判断这个变量是否存在,并不能判断这个变量的值是否为空,如果要判断这个变量存不存在且不为空的话,直接这样写 if (empty($_POST['username'])) 就行了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的写法是对的,这两个最好同时加上
isset 只是判断这个变量是否存在 ,如果为空,它也算是存在的
所以再 加上不空为的判断是合理的。
isset 只是判断这个变量是否存在 ,如果为空,它也算是存在的
所以再 加上不空为的判断是合理的。
追问
isset函数是检测变量是否设置。
谢谢。我想知道既用isset()又用!=null 判断,会不会冗余?isset是不是包含了!=null
格式:bool isset ( mixed var [, mixed var [, ...]] )
返回值:
若变量不存在则返回 FALSE
若变量存在且其值为NULL,也返回 FALSE
若变量存在且值不为NULL,则返回 TURE
我是看了这个才迷茫的
追答
你说的 这个已经说明了问题
isset它只判断 是否设置了,如果设置了,但设为空和没有设置,它返回的结果是一样的,所以分别是空,还是没有设置,所以需要再加!=NULL 来判断下
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这是两个不通层级的判断,对于做技术的朋友来说,这个逻辑顺序是非常有必要的
追问
谢谢。我想知道既用isset()又用!=null 判断,会不会冗余?isset是不是包含了!=null
追答
请参考楼上的回答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以统一用empty代替:
if(!empty($_POST['username'])){
$username = trim($_POST['username']); #过滤表单数据
$where['username'] = array('like',"%{$username}%");
}
更多追问追答
追问
谢谢。我想知道既用isset()又用!=null 判断,会不会冗余?isset是不是包含了!=null
追答
如果非要用isset判断,那么得先判断isset,然后再判断!null.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询