当前位置:  开发笔记 > 编程语言 > 正文

PHP:打印未定义的变量而不发出警告

如何解决《PHP:打印未定义的变量而不发出警告》经验,为你挑选了2个好方法。

我只是想知道是否有一种快速的方法来回应未定义的变量而不会收到警告?(我可以更改错误报告级别,但我不想.)我到目前为止最小的是:

isset($variable)?$variable:''

我出于以下几个原因不喜欢这个:

它有点"罗嗦"而复杂

$variable 重复

空白字符串的回声总是让我烦恼.

我的变量名可能会更长,例如 $arrayvar['parameter']

Eran Galperi.. 13

您可以使用错误抑制运算符 @ 运行它.

echo @$variable;

但是,最好不要忽略未设置的变量.未设置的变量可能表示脚本存在逻辑错误,最好确保在使用前设置所有变量.



1> Eran Galperi..:

您可以使用错误抑制运算符 @ 运行它.

echo @$variable;

但是,最好不要忽略未设置的变量.未设置的变量可能表示脚本存在逻辑错误,最好确保在使用前设置所有变量.



2> Tom Haigh..:

你可以使用从这里取得的ifsetor()示例:

function ifsetor(&$variable, $default = null) {
    if (isset($variable)) {
        $tmp = $variable;
    } else {
        $tmp = $default;
    }
    return $tmp;
}

例如:

echo ifsetor($variable);
echo ifsetor($variable, 'default');

这不会生成通知,因为变量是通过引用传递的.

推荐阅读
手机用户2502851955
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有