PHP之——安装配置Xdebug模块详解

2024-04-17 08:32

本文主要是介绍PHP之——安装配置Xdebug模块详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

感谢博主 :  http://blog.csdn.net/l1028386804/article/details/51655507

转载  : http://blog.csdn.net/l1028386804/article/details/51655507


1、下载Xdebug

到目前为止,Xdebug的最新版本为2.4.0,你可以前往Xdebug官方网站下载与自己的PHP版本匹配的Xdebug模块文件。

由于笔者使用的是php5.5.12版本,因此下载的Xdebug模块文件为php_xdebug-2.2.5-5.5-vc11-nts-x86_64.dll


2、安装配置Xdebug

接着,我们将Xdebug模块文件放入PHP安装目录/ext文件夹中,接着我们在PHP配置文件php.ini中追加如下配置内容: 

[plain]  view plain copy
  1. [Xdebug]  
  2. ;指定Xdebug扩展文件的绝对路径  
  3. zend_extension="d:/wamp/bin/php/php5.5.12/zend_ext/php_xdebug-2.2.5-5.5-vc11.dll"  
  4. ;启用性能检测分析  
  5. xdebug.profiler_enable=on  
  6. ;启用代码自动跟踪  
  7. xdebug.auto_trace=on  
  8. ;允许收集传递给函数的参数变量  
  9. xdebug.collect_params=on  
  10. ;允许收集函数调用的返回值  
  11. xdebug.collect_return=on  
  12. ;指定堆栈跟踪文件的存放目录  
  13. xdebug.trace_output_dir="D:/debug"  
  14. ;指定性能分析文件的存放目录  
  15. xdebug.profiler_output_dir="D:/debug"  
  16. xdebug.profiler_output_name = cachegrind.out.%t.%p  

备注:在上述配置内容中,zend_extension用于指定Xdebug扩展模块的文件路径(由于Xdebug是基于Zend引擎的扩展,因此必须使用zend_extension配置指令,而不是extension。zend_extension指令的配置路径必须是绝对路径)。之后的6个配置语句是Xdebug的配置参数。
此时,我们重启服务器,通过访问含有phpinfo()函数的PHP文件,即可看到Xdebug模块的相关信息。 

3、配置参数选项附录

在上面的Xdebug配置中,我们只配置了6个常用的配置选项。当然,Xdebug还支持更多的配置参数,详情见下表。 
配置参数选项

 参数值类型与默认值参数选项描述
xdebug.auto_traceboolean类型,默认值=0是否在脚本运行之前自动调用相关追踪函数。
xdebug.cli_colorinteger类型,默认值=0该参数自2.2版本开始引入。如果值=1,当处于CLI模式或连接虚拟控制台时,Xdebug将高亮显示var_dumps()和堆栈输出,;在Windows中,这需要安装ANSICON工具。如果值=2,不管是否处于CLI模式或连接虚拟控制台,Xdebug都会高亮显示var_dumps()或堆栈输出;这种情况下,你可能会看到转义后的代码。
xdebug.collect_assignmentsboolean类型,默认值=0该参数自2.1版本开始引入。用于控制是否为函数跟踪添加变量赋值功能。
xdebug.collect_includesboolean类型,默认值=1控制是否在跟踪文件中写入include()、include_once()、require()、require_once()等函数中用到的文件名。
xdebug.collect_paramsinteger类型,默认值=0

控制在调用函数时,是否收集传递给函数的参数信息。如果参数值过大,这可能会占用大量的内存;不过,在Xdebug 2中不会出现该问题,因为Xdebug 2将相关数据写入磁盘中,而不是占用内存。

如果值=0,则不显示任何信息。
如果值=1,只显示类型和大小信息,例如:string(6)、array(8)。
如果值=2,将显示类型和大小,以及全部信息的工具提示。
如果值=3,将显示变量的全部内容。
如果值=4,将显示变量的全部内容和变量名。

xdebug.collect_returnboolean类型,默认值=0控制是否在追踪文件中写入函数调用的返回值。
xdebug.collect_varsboolean类型,默认值=0控制是否收集指定作用域中的变量信息。由于需要反向工程PHP的操作码数组,因此Xdebug的分析速度可能比较慢。
xdebug.coverage_enableboolean类型,默认值=1该参数自2.2版本开始引入。控制是否允许通过设置内部结构来启用代码覆盖率功能。
xdebug.default_enableboolean类型,默认值=1当发生异常或错误时,是否默认显示堆栈信息。
xdebug.dump.*string类型,默认值=Empty这里的*可以是COOKIE, FILES, GET, POST, REQUEST, SERVER, SESSION中的任意一个。用于指定发生错误时是否显示超全局变量数组中的索引变量信息。比如,你想要显示请求的IP地址和请求方式,可以设置为
xdebug.dump.SERVER=REMOTE_ADD,REQUEST_METHOD
多个索引变量用英文逗号隔开,如果要输出其中的所有变量,可以直接用*,例如:
xdebug.dump.GET=*
xdebug.dump_globalsboolean类型,默认值=1控制是否显示通过xdebug.dump.*定义的所有超全局变量的信息。
xdebug.dump_onceboolean类型,默认值=1如果出现多个错误,控制超全局变量信息是在所有错误中显示,还是只在第一个错误中显示。
xdebug.dump_undefinedboolean类型,默认值=1控制是否显示超全局变量中未定义的值。
xdebug.extended_infointeger类型,默认值=1是否强制进入PHP解析器的"extended_info"模式,这将允许Xdebug以远程调试器对文件或行添加断点。开启此模式将拖慢脚本的允许速度,该参数只能在php.ini中设置。
xdebug.file_link_formatstring类型,默认值=,自2.2版本开始引入。用于指定堆栈信息中用到的文件名称的链接样式,这允许IDE通过设置链接协议,直接点击堆栈信息中的文件名称,即可快速打开指定的文件。例如:ZendStudio://%f@%l(%f表示文件路径,%f表示行号)。
xdebug.force_display_errorsinteger类型,默认值=0自2.3版本开始引入。是否强制显示错误信息。
xdebug.force_error_reportinginteger类型,默认值=0自2.3版本开始引入。是否强制显示所有错误级别的信息。
xdebug.halt_levelinteger类型,默认值=0自2.3版本开始引入。指定出现那些错误级别的错误时,中止程序运行。例如:xdebug.halt_level=E_WARNING|E_NOTICE|E_USER_WARNING|E_USER_NOTICE(也仅支持上述4种错误级别)。
xdebug.idekeystring类型,默认值=*complex*指定传递给DBGp调试器处理程序的IDE Key。
xdebug.manual_urlstring类型,默认值=http://www.php.net仅2.2.1以下版本可用,用于指定从函数堆栈和错误信息链接到的帮助手册的基本URL。
xdebug.max_nesting_levelinteger类型,默认值=100指定递归的嵌套层级数。
xdebug.overload_var_dumpboolean类型,默认值=1自2.2版本开始引入,当php.ini中的html_error设为1时,Xdebug是否默认使用自身的改进版本来重载var_dump()。
xdebug.profiler_appendinteger类型,默认值=0当多个请求映射到相同文件时,指定是覆盖之前的调试信息文件还是追加内容到该文件中。
xdebug.profiler_enableinteger类型,默认值=0指定是否启用Xdebug的性能分析,并创建性能信息文件。
xdebug.profiler_output_dirstring类型,默认值=/tmp指定性能分析信息文件的输出目录
xdebug.profiler_output_namestring类型,默认值=cachegrind.out.%p指定性能分析信息文件的名称
xdebug.remote_enableboolean类型,默认值=0是否开启远程调试
xdebug.remote_handlerstring类型,默认值=dbgp指定远程调试的处理协议
xdebug.remote_hoststring类型,默认值=localhost指定远程调试的主机名
xdebug.remote_logstring类型,默认值=指定远程调试的日志文件名
xdebug.remote_modestring类型,默认值=req可以设为req或jit,req表示脚本一开始运行就连接远程客户端,jit表示脚本出错时才连接远程客户端。
xdebug.remote_portinteger类型,默认值=9000指定远程调试的端口号
xdebug.trace_optionsinteger类型,默认值=0指定对于之后的请求,追踪文件是追加内容还是覆盖之前内容。
xdebug.trace_output_dirstring类型,默认值=/tmp指定追踪文件的存放目录
xdebug.trace_output_namestring类型,默认值=trace.%c指定追踪文件的名称

更多信息请参考官方文档。



这篇关于PHP之——安装配置Xdebug模块详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/911293

相关文章

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

Zookeeper安装和配置说明

一、Zookeeper的搭建方式 Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。 ■ 单机模式:Zookeeper只运行在一台服务器上,适合测试环境; ■ 伪集群模式:就是在一台物理机上运行多个Zookeeper 实例; ■ 集群模式:Zookeeper运行于一个集群上,适合生产环境,这个计算机集群被称为一个“集合体”(ensemble) Zookeeper通过复制来实现

CentOS7安装配置mysql5.7 tar免安装版

一、CentOS7.4系统自带mariadb # 查看系统自带的Mariadb[root@localhost~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x86_64# 卸载系统自带的Mariadb[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7

Centos7安装Mongodb4

1、下载源码包 curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.2.1.tgz 2、解压 放到 /usr/local/ 目录下 tar -zxvf mongodb-linux-x86_64-rhel70-4.2.1.tgzmv mongodb-linux-x86_64-rhel70-4.2.1/

python: 多模块(.py)中全局变量的导入

文章目录 global关键字可变类型和不可变类型数据的内存地址单模块(单个py文件)的全局变量示例总结 多模块(多个py文件)的全局变量from x import x导入全局变量示例 import x导入全局变量示例 总结 global关键字 global 的作用范围是模块(.py)级别: 当你在一个模块(文件)中使用 global 声明变量时,这个变量只在该模块的全局命名空

hadoop开启回收站配置

开启回收站功能,可以将删除的文件在不超时的情况下,恢复原数据,起到防止误删除、备份等作用。 开启回收站功能参数说明 (1)默认值fs.trash.interval = 0,0表示禁用回收站;其他值表示设置文件的存活时间。 (2)默认值fs.trash.checkpoint.interval = 0,检查回收站的间隔时间。如果该值为0,则该值设置和fs.trash.interval的参数值相等。

NameNode内存生产配置

Hadoop2.x 系列,配置 NameNode 内存 NameNode 内存默认 2000m ,如果服务器内存 4G , NameNode 内存可以配置 3g 。在 hadoop-env.sh 文件中配置如下。 HADOOP_NAMENODE_OPTS=-Xmx3072m Hadoop3.x 系列,配置 Nam

深入探索协同过滤:从原理到推荐模块案例

文章目录 前言一、协同过滤1. 基于用户的协同过滤(UserCF)2. 基于物品的协同过滤(ItemCF)3. 相似度计算方法 二、相似度计算方法1. 欧氏距离2. 皮尔逊相关系数3. 杰卡德相似系数4. 余弦相似度 三、推荐模块案例1.基于文章的协同过滤推荐功能2.基于用户的协同过滤推荐功能 前言     在信息过载的时代,推荐系统成为连接用户与内容的桥梁。本文聚焦于

wolfSSL参数设置或配置项解释

1. wolfCrypt Only 解释:wolfCrypt是一个开源的、轻量级的、可移植的加密库,支持多种加密算法和协议。选择“wolfCrypt Only”意味着系统或应用将仅使用wolfCrypt库进行加密操作,而不依赖其他加密库。 2. DTLS Support 解释:DTLS(Datagram Transport Layer Security)是一种基于UDP的安全协议,提供类似于

OpenHarmony鸿蒙开发( Beta5.0)无感配网详解

1、简介 无感配网是指在设备联网过程中无需输入热点相关账号信息,即可快速实现设备配网,是一种兼顾高效性、可靠性和安全性的配网方式。 2、配网原理 2.1 通信原理 手机和智能设备之间的信息传递,利用特有的NAN协议实现。利用手机和智能设备之间的WiFi 感知订阅、发布能力,实现了数字管家应用和设备之间的发现。在完成设备间的认证和响应后,即可发送相关配网数据。同时还支持与常规Sof