首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将未设置变量传递给函数

将未设置变量传递给函数
EN

Stack Overflow用户
提问于 2011-04-05 12:04:53
回答 4查看 3.4K关注 0票数 5

我的代码:

代码语言:javascript
运行
复制
function Check($Variable, $DefaultValue) {
    if(isset($Variable) && $Variable != "" && $Variable != NULL) {
        return $Variable;
    }
    else {
        return $DefaultValue;
    }
}

$a = Check(@$foo, false);
$b = Check(@$bar, "Hello");

//$a now equals false because $foo was not set.
//$b now equals "Hello" because $bar was not set.
  1. 当一个变量不存在并传递给函数(抑制错误)时,实际传递的是什么?
  2. 这个函数是否有任何未定义的行为?
  3. 是否有更好的方法来包装测试变量是否存在,并从函数中提供默认值?
  4. 当测试变量时,isset()在引擎盖下检查什么?

编辑:

默认值是用户定义的。有时是一个数字,有时是一个字符串。

EN

Stack Overflow用户

发布于 2011-04-05 12:08:29

当一个变量不存在并传递给函数(抑制错误)时,实际传递的是什么?

在这种情况下,您尝试从一个不存在的变量中读取。

所以,你得到了null --它被传递给函数。

这个函数是否有任何未定义的行为?

但我并不认为--除非使用@运算符不是很好的实践。

票数 2
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5551491

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档