xdebug安装和使用

来源:互联网 发布:syslog 端口号 编辑:程序博客网 时间:2024/06/03 18:19

一.安装

1.下载 xdebug并解压 xdebug 配置xdebug源码

wget http://xdebug.org/files/xdebug-2.3.2.tgztar -zxf xdebug-2.2.7.tgz /usr/bin/phpize/*phpize的命令是用来准备一个PHP扩展的构建环境.简单说就是生成一个configure配置脚本*/



2.编译安装xdebug

<span style="white-space:pre"></span>./configure --with-php-config=/usr/bin/php-config --prefix=/usr/lib64/php/modules --enable-xdebug/*** --with-php-config 这个参数是指定php版本,如果主机上只有一个php不需要加* --prefix 指定安装路径* --enable-xdebug 启用xdebug**/makemake install /*** Installing shared extensions:     /usr/lib64/php/modules/* 看到这一行表示安装成功了* 安装/usr/lib64/php/modules/这个目录**/

4.php起开xdebug扩展

<span style="white-space:pre"></span>查看下/usr/lib64/php/modules是否存在xdebug.so ll /usr/lib64/php/modules | grep xdebug在php.ini中增加zend_extension=/usr/lib64/php/modules/xdebug.so /*这里必须填写完整路径*/(如果存在则去掉注释即可)或者在php.d文件夹中新建一个xdebug.ini文件, 写入zend_extension=xdebug.so并保存vim /etc/php.d/xdebug.ini重启apacheservice httpd restart查看php是否加载了 xdebugphp -i |grep xdebug | head/*** php -i = phpinfo()* head -n 5 显示前5行,默认是前10行*/这样就算安装成功了,但是使用的话还需要配置一些参数


5.xdebug参数

详细参数请参考: http://xdebug.org/docs/all_settings详细函数请参考: http://xdebug.org/docs/all_functions先介绍一些基本配置,详细的请自己研究文档xdebug.auto_trace=on/*自动打开“监测函数调用过程”的功模*/xdebug.profiler_enable=on   /*打开效能监测器.*/xdebug.trace_output_dir="/usr/tmp/xdebug/trace"  /*设定函数调用监测信息的输出文件的路径.*/xdebug.profiler_output_dir="/usr/tmp/xdebug/profiler"  /*设定效能监测信息输出文件的路径.*/;xdebug.remote_enable=on             /*设置监听主机和端口的debug客户端*/;xdebug.remote_handler=dbgp            /*2.1开始只支持dbgp,所以也不需要设置*/;xdebug.remote_host=localhost  /*debug客户端正在运行的主机,可以使用主机名或IP*/;xdebug.remote_port=9000/*xdebug连接远程主机的端口,最好不要修改*/配置完成后,需要重启服务器备注: /tmp/xdebug/profiler和/tmp/xdebug/trace权限改成777,不然apache没有写入权限.如果这两个目录下面还是没有生成*.out文件,请检查路径是否填写正确,并关闭"selinux".


二.使用

1.profiler主要用来PHP性能测试在windows下面查看profiler文件请使用 wincachegrind下载地址 http://sourceforge.net/projects/wincachegrind/files/latest/download在linux下使用KCacheGrind这个工具,但必须安装kde环境,所以还是使用windows的比较方便
2.debug调试功能<?php$a = array(1, 2, 3);$b =& $a;$c =& $a[2];xdebug_debug_zval('a');xdebug_debug_zval("a[2]");?>一般框架都提供debug调试功能,所以该功能挺鸡肋的,但是如果自己开发框架或者不用框架写,可以考虑使用




0 0
原创粉丝点击