XDebug是一个开放源代码的PHP程序调试和性能分析器(即一个Debug工具),可以用来跟踪,调试和分析PHP程序的运行状况。相比echo、print_r()、var_dump()、printf()函数,使用XDebug的效率和精准度更高、也更快捷。
XDebug官网下载地址:https://xdebug.org/download.php。
到XDebug官网下载DLL文件,并将DLL文件放到PHP的ext目录下。
下载的dll文件必须与PHP的版本一致,通过phpinfo()查看当前PHP的版本号、架构位数、VC版本以及是否为安全线程。
例如,我本地的phpinfo()输出与以上相关的信息为:
所以我要下载的XDebug扩展文件为:PHP 7.1 VC14 (64 bit)。
因为扩展名没有TS,是非线程安全,即NTS,与PHP的API320160303,NTS,VC14信息对应。
然后修改php.ini文件,在后面加上:
[XDebug] zend_extension = "D:\php\php54n\ext\php_xdebug-2.5.0-7.1-vc14-nts-x86_64.dll"
首先,到XDebug官网下载源码,然后用命令安装。
$ wget https://xdebug.org/files/xdebug-2.4.0.tgz $ phpize $ ./configure $ make $ sudo make install
64位Linux系统会将 xdebug.so 文件安装到 /usr/lib64/php/modules/ 目录下。
修改php.ini文件,加上如下两行。
[XDebug] zend_extension = /usr/lib64/php/modules/xdebug.so
也可以在/etc/php.d/下新建xdebug.ini文件,内容一样,PHP会自动加载该目录下的文件。
接着,打开php.ini,在[XDebug]部分下面继续添加如下# Debug Config和# Profiler Config后的配置,如下:
[XDebug] zend_extension = /usr/lib64/php/modules/xdebug.so ; Debug Config xdebug.remote_enable = 1 xdebug.remote_handler = "dbgp" xdebug.remote_host = "127.0.0.1" xdebug.remote_port = 9000 xdebug.remote_log = "/var/log/php-fpm/xdebug.log" ; Profiler Config xdebug.profiler_enable = 1 xdebug.profiler_enable_trigger = 1 xdebug.profiler_output_dir = "/tmp/xdebug" xdebug.profiler_output_name = "out.%t-%s"
如果只是用于调试,那么只要加#Debug Config和后面的几行。如果调试客户端(如:PHPStorm IDE)和PHP不在同一电脑上,则需要把xdebug.remote_host配置成调试客户端的IP。
如果要PHP程序性能分析,则再加上# Profiler Config以及后面的配置。
查看XDebug的所有配置。
参考资料: