-1

可能重复:
为什么我需要 php 中的 isset() 函数?

如果我说有什么区别

if($value){}

对比

if (isset($value)){}

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

谢谢

4

4 回答 4

1

当您使用访问未定义的变量时,PHP 会生成警告(未定义的变量)if ($value)

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

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

于 2012-07-13T16:50:52.493 回答
1
$value = "";
$value = 0;
var $value;

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

享受!

于 2012-07-13T16:51:25.387 回答
1
    if( $value ) {}

如果变量包含假值,例如 0 或假,则返回假

    if( isset( $value ) ) {}

如果变量已使用任何值(包括 0 或 false)初始化,则返回 true

于 2012-07-13T16:52:29.013 回答
1

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

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

将评估 $value 是 trutty 还是 falsy(IE,它评估为 false 或 true)。

尽管if(isset($value)){}

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

于 2012-07-13T16:53:35.550 回答