为什么有一个空的PHP变量?

时间:2014-08-31 02:21:50

标签: php variables

我最近一直在审查很多PHP代码,并且我经常遇到这样的情况:

function () {

    $var = '';

    if ( ... ) {
      $var = '1';
    }

    echo $var;

}

声明一个空变量,然后再定义。

这背后有原因吗?

我能想到这样做的唯一原因就是确保$var在以前定义为空时开始为空。

3 个答案:

答案 0 :(得分:5)

如果您未定义$varif条件失败,则会收到undefined variable $var, assumed constant var通知。 (E_NOTICE

答案 1 :(得分:2)

如果if ( ... ) {评估为false,则永远不会定义$var。因此,当执行echo $var时,将显示NOTICE,但未定义$var。通过定义默认值可以防止出现这种情况。

答案 2 :(得分:0)

如果你没有$ var ='&#39 ;;你需要

if (isset($var)) {
    echo $var;
} else {
    echo '';
}

当您返回类似AJAX调用的内容时,这确实很有用。您可以将所有内容初始化为''或者错误。这样,javascript就会出错,因为它所期待的东西总是在那里,即使它是FALSE或空白。