在empty()函数之后没有得到值

时间:2014-03-05 09:38:43

标签: php

我正在发送带有帖子的参数。此参数保存ZERO值。

当我尝试使用空方法时,如果参数不为空则应该返回1,如果参数为零则返回0。

如果我正在使用此代码:

var_dump(empty($_REQUEST['gender_preferences']) );

我得到了结果:1。

如果我正在使用此代码:

var_dump(!empty($_REQUEST['gender_preferences']) );

我没有得到0值;

为什么会发生这种情况,我该如何解决?

2 个答案:

答案 0 :(得分:5)

以下内容被认为是空的:

""  /* (an empty string) */
0  /* (0 as an integer)*/
"0"  /* (0 as a string)*/
NULL
FALSE
array() /*  (an empty array)*/
var $var;  /* (a variable declared, but without a value in a class)*/

尝试使用isset代替

isset($_REQUEST['gender_preferences'])

答案 1 :(得分:0)

空函数确定变量是否为空,并且您请求的变量包含值,即零。

检查变量是否为零

if($_REQUEST['gender_preferences']){
  //value is not zero
}else{
  //value is zero
}