【发布时间】:2013-08-14 14:11:07
【问题描述】:
我正在使用此代码(注意:HELLO_WORLD 从未定义!):
function my_function($Foo) {
//...
}
my_function(HELLO_WORLD);
HELLO_WORLD 可能已定义,也可能未定义。我想知道它是否被通过,如果HELLO_WORLD 被通过,假设它是恒定的。我不在乎HELLO_WORLD的值。
类似这样的:
function my_function($Foo) {
if (was_passed_as_constant($Foo)) {
//Do something...
}
}
如果参数是常量还是变量,我如何判断它是传递的?
我知道这不是很好的编程,但这是我想做的。
【问题讨论】:
-
测试它是否在您尝试使用它之前定义。
-
编辑表明
HELLO_WORLD在我的示例中从未定义,这意味着所有建议使用defined()的答案都是无用的,除非我遗漏了什么。 -
我也问过类似的问题,希望对你有帮助:stackoverflow.com/questions/12174971/…