zoukankan      html  css  js  c++  java
  • xdebug参数说明

    ;;;;;;;;;;;;;;;;;;;;;;;;
    ; Basic Features
    ; xdebug基本功能,如堆栈跟踪,递归错误安全输出,时间内存跟踪等
    ;;;;;;;;;;;;;;;;;;;;;;;;
    ;# int, default:1
    ;# 自动启用,如果需要临时关闭,使用xdebug_disable(),当使用此项时,error时会显示详细堆栈信息
    ;xdebug.xdebug_enable=1
    ;
    ;# int, default:0
    ;# 无视php dispaly_errors配置
    ;xdebug.force_display_errors=1
    ;
    ;# int, default:0
    ;# 比特位方式设置,使用or,无视error_reporting()和ini配置
    ;xdebug.force_error_reporting

    ;# int, default:0
    ;# 提升错误类型,例如设置为E_WARNING,此后此类型错误将以error方式报错,之支持一下四个类别:E_WARNING | E_NOTICE | E_USER_WARNING | E_USER_NOTICE
    ;xdebug.halt_level
    ;
    ;# int, default:256
    ;# 无限递归保护
    ;xdebug.max_nesting_level
    ;
    ;int, default:-1
    ;最打追踪堆栈数
    ;xdebug.max_stack_frames
    ;
    ;boolean, default:0
    ;关闭@抑制错误符号功能,将不再抑制错误
    ;xdebug.scream
    ;
    ;;;;;;;;;;;;;;;;
    ;function
    ;;;;;;;;;;;;;;;;
    ;返回调用的类等信息,堆栈不存在返回null,堆栈没有类信息返回false
    ;string xdebug_call_class([int $depth = 1])
    ;string xdebug_call_funciton([int $depth = 1])
    ;string xdebug_call_file([int $depth = 1])
    ;string xdebug_call_line([int $depth = 1])
    ;
    ;禁用堆栈跟踪
    ;void xdebug_disable()
    ;
    ;启动堆栈跟踪
    ;void xdebug_enable()
    ;
    ;返回所有header信息,包括手动设置,如header(),setcookie()函数
    ;array xdebug_get_headers()
    ;
    ;返回是否启用了堆栈跟踪
    ;bool xdebug_is_enabled()
    ;
    ;返回当前内存使用情况
    ;int xdebug_memory_usage()
    ;
    ;返回内存峰值
    ;int xdebug_peak_memory_usage()
    ;
    ;开始记录所有格式化过的输出,不再显示出来,使用xdebug_stop_error_collection()结束,xdebug_get_collected_errors()获取输出
    ;void xdebug_start_error_collecation()
    ;停止上面的方法
    ;void xdebug_stop_error_collection()
    ;获取堆栈中的格式化过的所有错误信息,int clean为true,将清空缓冲区,默认不清空
    ;string xdebug_get_collected_errors([int clean = 0])
    ;
    ;以秒为单位,返回脚本开始到当前的时间索引
    ;float xdebug_time_index()
    ;
    ;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ;Variable Display Features
    ;替换var_dump()函数,限制数组数量,深度,字符串长度等
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; int, default:0
    ; 设置为1,cli和tty下带颜色显示var_dumps和堆栈跟踪
    ; 设置为2,所有都显示颜色,不能显示颜色会显示出转义码
    ;xdebug.cli_color
    ;
    ; boolean, default:2
    ; 默认情况下, php.ini设置html_errors为1或2时,xdebug会用自己的改进版自动重载var_dump()来显示变量,将此参数设置为0,可以关闭xdebug自动重载,最好先检查一下html_errors,不然这个设置就显得多余了
    ; 如果设置为2,会将文件名和行号添加到输出中
    ; xdebug.overload_var_dump
    ;
    ; int, default:128
    ; 控制xdebug_var_dump(),xdebug.show_local_vars,trace相关函数输出的数组子项和对象属性数量
    ;xdeug.var_diaplay_max_children
    ;
    ; int, default:512
    ; 控制xdebug_var_dump(),xdebug.show_local_vars,trace相关函数输出的最大字符串长度
    ;xdebug.var_display_max_data
    ;
    ; int, default:3, max:1023,-1也是最大值
    ; 控制xdebug_var_dump(),xdebug.show_local_vars,trace相关函数输出的数组元素和对象的嵌套级别
    ; 远程调试不受影响
    ;xdebug.var_display_max_depth
    ;
    ;;;;;;;;;;;;
    ;function
    ;;;;;;;;;;;;
    ;显示变量详细信息,这个函数被xdebug重载,详细见xdebug_var_dump()
    ;void var_dump([mixed var [, ...]])
    ;
    ;显示一个或多个变量结构化信息,包括类型,值,引用计数信息
    ;此函数比debug_zval_dump()好,因为此函数用函数名查找内部符号表来找到输入的变量,debug_zval_dump()使用值传递,导致引用加1等问题
    ;void xdebug_debug_zval([string varname [, ...]])
    ;
    ; 在stdout输出一个或多个变量结构化信息,包括类型,值,引用计数信息
    ; 和上面的函数不同,不通过web api显示,例如apache运行时就显示控制台
    ;void xdebug_debug_zval_stdout([string varname [, ...]])
    ;
    ; 显示超全局变量,需要在php.ini设置xdebug.demp.*参数
    ; 如:xdebug.dump.GET=*
    ; xdebug.dump.SERVER=REMOTE_ADDR
    ;void xdebug_dump_superglobals()
    ;
    ; 显示变量详细信息
    ; 上面的php.ini设置的参数影响此函数
    ;void xdebug_var_dump([mixed var [, ...]])
    ;
    ;
    ;;;;;;;;;;;;;;;;;;;;;;
    ; Stack Traces
    ; php.ini中display.errors设置为on是,设置显示堆栈跟踪信息,默认显示很少的信息,因为大量信息会减慢脚本执行速度和浏览器渲染速度(此问题可以忽略,因为现在的浏览器性能都很强),设置此类参数可以显示更详细的信息,但会更慢
    ;;;;;;;;;;;;;;;;;;;;;;
    ; boolean, default:1
    ; 控制是否将include(),require()中的文件名写入跟踪文件
    ;xdebug.collect_includes
    ;
    ; int, default:0
    ; 显示函数参数信息
    ; 0:不显示参数
    ; 1:类型和数量,耗内存,如string(6), array(8)
    ; 2:完整变量内容,耗磁盘
    ; 3:完整变量内容,被xdebug.var_display_children,xdebug.var_diaplay_max_data,xdebug.var_display_max_depth限制
    ; 4:全变量内容和变量名
    ; 5:php序列化变量内容,没有名字
    ;xdebug.collect_params
    ;
    ; boolean, default:0
    ; 告诉xdebug收集一定范围内使用哪些变量信息,xdebug需要对php操作码逆向工程,所以分析会很慢,用于xdebug.collect_params
    ; 在使用xdebug_get_declared_vars()时才需要此设置
    ;xdebug.collect_vars
    ;
    ; string, default:空
    ; 转储COOKIE,FILE,GET,POST,REQUEST,SERVER,SESSION信息
    ; 可以制定某几项,如
    ; xdebug.dump.SERVER = REMOTE_ADDR,REQUEST_METHOD
    ; xdebug.dump.GET = *
    ;xdebug.dump.*
    ;
    ; boolean, default:1
    ; 是否显示由xdebug.dump.*设置的超全局变量
    ;xdebug.dump_globals
    ;
    ; boolean, default:1
    ; 控制是否在第一次出错时就抛出全局变量值
    ;xdebug.dump_core
    ;
    ; boolean, default:0
    ; 是否从超全局变量取出未定义的值
    ;xdebug.dump_undefined
    ;
    ; string, default:空
    ; 设置堆栈跟踪里文件名链接的格式,例如有些ide可以直接点击文件链接进入文件,设置方法见xdebug文档
    ; %F:文件名
    ; %L:行号
    ;xdebug.file_link_format
    ;
    ; string, default:http://www.php.net
    ; 函数跟踪和错误消息中的函数到手册的链接url
    ;xdebug.manual_url
    ;
    ; int, default:0
    ; 发生错误时,不管有没有捕获,都显示堆栈跟踪
    ;xdebug.show_error_trace
    ;
    ; int, default:0
    ; 发生错误或异常时,不管有没有捕获,都显示堆栈跟踪
    ;xdebug.exception_trace
    ;
    ; int, default:0
    ; 设置为非0时,将转储顶级作用域的所有变量,会显示大量信息,所以默认关闭
    ;xdebug.show_local_vars
    ;
    ; int, default:0
    ; 设置为非0时,xdebug生成的可读跟踪文件会显示函数调用之间的内存使用情况差异
    ; xdebug被配置为计算机可读的跟踪文件时,将始终显示此信息
    ;xdebug.show_mem_delta
    ;
    ; 见Variable中配置
    ;xdebug.cli_color
    ;xdebug.var_display_max_children
    ;xdebug.var_display_max_data
    ;xdebug.var_display_max_depth
    ;
    ;;;;;;;;;;;;;;;;;;
    ;function
    ;;;;;;;;;;;;;;;;;;
    ; 返回声明的变量
    ;array xdebug_get_declared_vars()
    ;
    ; 开始监控功能
    ;void xdebug_start_function_monitor(array $list_of_functions_to_monitor)
    ;
    ; 停止监视功能
    ;void xdebug_stop_function_monitor()
    ;
    ; 返回堆栈跟踪的数组
    ;array xdebug_get_function_stack()
    ;
    ; 返回有关监视功能的信息
    ;array xdebug_get_monitored_functions()
    ;
    ; 返回当前堆栈深度级别,脚本主题是0级,每个包含和函数调用深度会加1
    ;int xdebug_get_stack_depth()
    ;
    ; 显示当前的功能堆栈
    ; message:自定义标题
    ; optins:XDEBUG_STACK_NO_DESC,不打印标题
    ;none xdebug_print_function_stack([string message[, int options]])
    ;
    ;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Function Traces
    ; 记录函数调用,参数,返回值到不同格式的文件
    ;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; boolean, default:0
    ; 自动跟踪,在脚本运行之前启用跟踪
    ;xdebug.atuo_trace
    ;
    ; boolean, default:0
    ; 是否为函数追踪添加变量赋值
    ;xdebug.collect_assignments
    ;
    ; boolean, default:0
    ; 显示返回值
    ;xdebug.collect_return
    ;
    ; boolean, default:0
    ; 可以使用XDEBUG_TRACE GET/POST参数出发生成跟踪文件写入到定义好的目录
    ; 建议将xdebug.auto_trace设置为0,参数根据xdebug.trace_enable_trigger_value设置
    ;xdebug.trace_enable_trigger
    ;
    ; string, default:""
    ; 设置xdebug.trace_enable_trigger需要的值
    ;xdebug.trace_enable_trigger_value
    ;
    ; int, default:0
    ; 设置跟踪文件格式
    ; 0:人类可读跟踪文件
    ; 1:计算机可读文件
    ; 2:简单的html格式化
    ;xdebug.trace_format
    ;
    ; int, default:0
    ; 跟踪文件将为追加,而不是覆盖
    ;xdebug.trace_options
    ;
    ; string, default:/tmp
    ; 设置跟踪文件写入目录
    ;xdebug.trace_output_dir
    ;
    ; string, default:trace.%c
    ; 跟踪文件名称
    ; %c:当前工作目录的crc32,例:trace.%c -> trace.12345666.xt
    ; %p:pid,例:trace.%p -> trace.123.xt
    ; %r:随机数,例:trace.%r -> trace.072db0.xt
    ; %s:脚本名,例:cachegrind.out%s -> cachegrind.out._home_http_test_php
    ; %t:时间戳(秒),例:trace.%t -> trace.1232345158.xt
    ; %u:时间戳(微妙),例:trace.%u -> trace.1234151511_323425.xt
    ; %H:$_SERVER['HTTP_HOSTl'],例:trace.%H -> trace.liuxuzzz.xt
    ; %R:$_SERVER['REQUEST_URI'],例:trace.%R -> trace._test_xdebug_test_php_var=1_var2=2.xt
    ; %U:$_SERVER['UNIQUE_ID'],例:trace.%U -> trace.TRX4n38AAAEAAB9gBFkAAAAB.xt
    ; %S:session_id(from $_COOKIE if set),例:trace.%S -> trace.c70c1ec2375af58f74b390bbdd2a679d.xt
    ; %%,字面值%号,例:trace.%% -> trace.%%.xt
    ;
    ; 见trace
    ;xdebug.collect_includes
    ;xdebug.collect_params
    ;xdebug.show_mem_delta
    ;xdebug.var_display_max_children
    ;xdebug.var_display_max_data
    ;xdebug.var_display_max_depth
    ;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ;function
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; 返回函数跟踪文件名
    ;string xdebug_get_tracefile_name()
    ;
    ; 开始一个新跟踪
    ; trace_file:写入到此文件,相对于当前目录,可使用绝对路径
    ; param2:
    ; XDEBUG_TRACE_APPEND(1):追加
    ; XDEBUG_TRACE_COMPUTERIZED(2):使用xdebug.trace_format中的格式创建一个跟踪文件,不使用内存,占用磁盘
    ; XDEBUG_TRACE_HTML(4):创建一个html格式文件
    ; XDEBUG_TRACE—_NAKED_FILENAME(8):将xt添加为文件后缀
    ;
    ; 停止当前函数跟踪
    ;string xdebug_stop_trace()
    ;
    ;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Code Coverage Analysis
    ; 看看执行了哪行脚本,单元测试需要此配置来输出覆盖率
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; boolean, default:1
    ; 允许代码覆盖率,设置会减慢xdebug速度
    ;xdebug.coverage_enable
    ;
    ;;;;;;;;;;;;;;;;;;;;;;
    ;function
    ;;;;;;;;;;;;;;;;;;;;;;
    ; 返回代码覆盖率是否有效
    ; boolean xdebug_code_coverage_started()
    ;
    ; 返回代码覆盖率情况
    ; array xdewbug_get_code_coverage()
    ;
    ; 开始代码覆盖
    ; XDEBUG_CC_UNUSED:记录没执行的行
    ; XDEBUG_CC_DEAD_CODE:分析不能执行的行
    ; XDEBUG_CC_BRANCH_CHECK:启用路径执行分析
    ; return:1,被执行;-1,没有执行;-2:没有可执行代码
    ;void xdebug_start_code_coverage([int options])
    ;
    ; 停止代码覆盖
    ;void xdebug_stop_code_coverage([int cleanup = true])
    ;
    ;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Garbage Collection Statistics
    ; 垃圾统计分析器,记录触发时间,清理变量数量,花费时间,释放多少内存
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; boolean, default: false
    ; 自动统计,生成文件到xdebug.gc_stats_output_dir设置的目录,名称为xdebug.gc_stats_output_name设置
    ;xdebug.gc_stats_enable
    ;
    ; string, default:/tmp
    ; 垃圾收集统计信息输出目录
    ;xdebug.gc_stats_output_name
    ;
    ; string, gc_stats_output_name
    ; 垃圾收集统计输出文件,格式见xdebug.trace_output_name
    ;xdebug.gc_stats_output_name
    ;
    ;;;;;;;;;;;;;;;;;;;;;;
    ;function
    ;;;;;;;;;;;;;;;;;;;;;;
    ; 返回到目前为止触发的垃圾收集运行数量
    ; xdebug.gc_stats_enable为false依然有效
    ;int xdebug_get_gc_run_count()
    ;
    ; 返回到目前收集的变量根的数量
    ; xdebug.gc_stats_enable为false依然有效
    ;int xdebug_get_gc_total_collected_roots()
    ;
    ; 返回垃圾收集统计文件名
    ;string xdebug_get_gcstats_filename()
    ;
    ; 开始收集垃圾统计信息
    ;string xdebug_start_gcstats([string gcstats_file])
    ;
    ; 停止当前的垃圾收集统计信息收集
    ; string xdebug_stop_gcstats()
    ;
    ;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Profiling PHP Scripts
    ; 性能分析器
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; int, default:0
    ; 将多个请求写入一个分析器文件,计算平均值
    ;xdebug.profiler_aggregate
    ;
    ; int, default:0
    ; 将内容附加到上一个文件
    ;xdebug.profiler_append
    ;
    ; int, default:0
    ; 启用分析器
    ;xdebug.profiler_enable
    ;
    ; int, default:0
    ; 使用XDEBUG_PROFILE GET/POST 触发分析器
    ;xdebug.profiler_enable_trigger
    ;
    ; string, default:""
    ; 设置xdebug.profiler_enable_trigger的请求值
    ;xdebug.profiler_enable_trigger_value
    ;
    ; string, default:/tmp
    ; 设置分析器输出目录
    ;xdebug.profiler_output_dir
    ;
    ; string, default:cachegrind.out.%p
    ; 设置文件名,更多格式见xdebug.trace_output_name
    ;xdebug.profiler_output_name
    ;
    ;;;;;;;;;;;;;;;;;;;;;
    ;function
    ;;;;;;;;;;;;;;;;;;;;;
    ; 返回配置文件信息文件名
    ;string xdebug_get_profiler_filename()
    ;

  • 相关阅读:
    jQuery学习笔记01
    webpack概念相关
    vue-cli4 配置公用scss样式的方法
    vue-cli4的路径别名
    webpack学习03——搭建本地服务器
    webpack学习02——Plungin的使用
    VSCode生成vue项目模板
    Vue的使用方法
    webpack学习01——初次打包
    文献随笔目录
  • 原文地址:https://www.cnblogs.com/liuxuzzz/p/8276379.html
Copyright © 2011-2022 走看看