以下两个IF条件有什么区别吗?
if ($insert_id)
{
..
}
if($insert_id != NULL)
{
..
}
实际上一个函数返回mysql插入id,我想检查函数是否返回id。
NULL松散地等于FALSE、0和一个空字符串。
学习这个表来学习比较。
,
$value = NULL;
if($value == FALSE) // True
if($value == '') // True
if($value == 0) // True
while...
if($value === FALSE) // False
if($value === '') // False
if($value === 0) // False
不,没有区别。
如果使用!== NULL,就会有。如果只是!= NULL,它也会根据false, "(空字符串)或整数值0进行计算。
第一个语句也是如此,它是$insert_id == true的缩写,基本上与!= false或!= NULL相同。
如果$insert_id
属于mysql_query
返回的结果集,则使用第一个:
if ($insert_id)
{
// do stuff
}
if (!empty($insert_id))
{
}
if($insert_id > 0)
{
}
在php语言中,您不需要返回一个boolean表达式(这是正确的)。任何不同于:0,false,null和"(空字符串)的值都会被解析为true
对于你想要做的事情,没有区别。
基本上你要做的就是看看变量是否被设置。由于任何非零表达式本质上都为真,因此如果存在值,它将为真这样评价。