if和isset使用哪一个

时间:2012-07-13 16:47:30

标签: php php-5.3

  

可能重复:
  Why do I need the isset() function in php?

如果我说

,那会有什么不同
if($value){}

vs

if (isset($value)){}

我被要求将if($ value)更改为isset($ value)

感谢

4 个答案:

答案 0 :(得分:1)

当您使用if ($value)

访问未定义的变量时,PHP会生成警告(未定义的变量)

使用if (isset($value))测试是否已声明变量。

如果您知道已声明变量,则使用if ($value),并且您希望将内容评估为布尔值。

答案 1 :(得分:1)

$value = "";
$value = 0;
var $value;

在上述情况下,$value将返回false,因为这些值被视为空。但是,它们被认为是由PHP设置的,因此在这些情况下isset($value)将返回true

享受!

答案 2 :(得分:1)

    if( $value ) {}
如果变量包含false值(如0或false

),

将返回false

    if( isset( $value ) ) {}
如果变量已使用任何值(包括0或false

)初始化,则

将返回true

答案 3 :(得分:1)

好吧,首先,如果变量未设置,if($value){}将发出E_NOTICE警告。

除此之外,if($value){}

将评估$ value是否为trutty或falsy(IE,它的计算结果为false或true)。

if(isset($value)){}

将查看变量是否在某处定义,而不是关注其内容