什么是在PHP中调试的正确方法

时间:2012-11-28 22:13:39

标签: php debugging web

我主要使用python(pylons,pyramid)进行编程,但最近我正在研究一些magento商店。所以在python出现问题时我通常会通过打印行来调试(类似print "#"*20, some_variable)。

在PHP中,我知道我可以echoprint_r等。但是当控制器或块中出现问题时,我该如何调试?我还可以使用像python中的某种print函数吗?

3 个答案:

答案 0 :(得分:1)

您可以使用真正的调试器(XDebug)并像人一样调试断点:)

在更简单的情况下,这两个快捷方式(在Eclipse中定义为模板vde / dae(var_dump exit,print array exit))似乎是我最好的朋友:

echo '<pre>', var_dump($var), '</pre>'; exit;
echo '<pre>', print_r($var, true), '</pre>'; exit;

答案 1 :(得分:0)

对当前方式的一个小改进是使用error_log()。此输出到日志文件(通常是/ var / log / httpd / error_log),而不是输出到您的屏幕。

答案 2 :(得分:0)

PHP允许echo和print_r,也可以在代码中的任何地方看到var_dump。

除了可以快速错误搜索的变量输出之外,您还可以使用xdebug等php扩展和支持此功能的开发环境进行可视化调试。 (我最喜欢的是IntelliJ PHPStorm)

可视化调试允许您在代码中设置断点并直观地浏览代码,同时可以看到所有可变内容,callstack等等 - 可爱的功能。