xdebug安装和使用

一.安装

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

	wget http://xdebug.org/files/xdebug-2.3.2.tgz
	tar -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
	**/
	make
	make 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
	重启apache
		service httpd restart
	查看php是否加载了 xdebug
		php -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调试功能,所以该功能挺鸡肋的,但是如果自己开发框架或者不用框架写,可以考虑使用




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值