我的目标只是调试
function dbg($var){
echo "you have passed $var";
}
call dbg($test)
output:
you have passed test
call dbg("var")
output:
you have passed "var"
在php中。有人可以帮我这么做吗?
答案 0 :(得分:2)
如果$var
是全局变量,请尝试此操作:
function dbg($var){
echo "you have passed {$GLOBALS[$var]}";
}
答案 1 :(得分:1)
嗯,第二种情况相当简单 - 你传递一个字符串,你想显示字符串。不用担心。
但对于第一种情况,我恐怕答案是:不,你不能。
一旦进入函数,PHP就不知道除了值之外传递给它的变量。
我无法确定它会有多大价值。将代码更改为传递名称和值是很简单的 - 例如:
function dbg($name,$value) {
print "You passed $name, and the value was $value";
}
dbg('test',$test);
尽管如此,这并不是那么好 - 你也可以只使用print_r()
和朋友。
如果你真的想要更强大的调试工具,你应该研究xDebug。它是PHP的一个适当的调试工具,它允许您逐行遍历代码,并在程序运行期间的任何时候查看变量的内容(以及许多其他好的功能)。它还与几个流行的IDE很好地集成。