我想为调试目的制作一个小函数,以人类可读的格式打印变量的内容。
该功能基于 CakePHP 框架中的快捷方式pr()
,即:
到目前为止我有这个:
function pr($var,$msg){
$pr_debug=true;
if($pr_debug){
echo "<pre>";
if($msg) echo "<b>".$msg.": </b>";
if(gettype($var)=="array" || gettype($var)=="object" ) echo "<br>";
print_r($var);
echo "</pre>";
}
}
它在变量内容之前打印一条可选消息 ($msg)。
但我要补充的是,如果没有发送消息,也可以打印变量的名称作为这样的消息,所以我可以得到这样的东西:
$myvar="hello";
pr($myvar);
//应该输出:
myvar: hello
那么在我的函数中,我怎样才能将变量的名称作为字符串来输出呢?即pr($foo);
我需要"foo"
,
$name="biz"; pr($$name);
我需要"biz",
等等......
最好我想要一些尽管 PHP 全局配置或其中任何一个都可以工作的东西(顺便说一下,我不太了解,所以对 GLOBALS 的任何帮助将不胜感激)。
谢谢!
额外:在stackoverflow,我如何格式化源代码以获得PHP格式和颜色?截至目前,我简单地使用了文本区域中的工具栏并选择了“代码示例”......