文档内容来自xdebug.org/docs
,翻译时xdebug版本为2.6
。我在官方文档基础上针对中文排版和教程内容的编排作了一些优化,但愿中文文档看起来更容易理解。php
英文原始文档地址: https://xdebug.org/docs/
中文文档github地址: https://github.com/Anoxia/xde...
类型:boolean,默认值:1
参数设置为1时,在错误事件中会显示堆栈跟踪信息。您可使用xdebug_disable()
来禁用显示你的代码的栈跟踪。因为这是Xdebug的基本功能之一,建议将此设置设置为1。html
该功能仅适用于
Xdebug> = 2.3
类型:int,默认值:0,
若是该参数被设置为1,那么老是会显示错误 ,无论PHP的display_errors 是什么设置。git
该功能仅适用于
Xdebug> = 2.3
类型:int,默认值:0,
这个参数的设置是一个位掩码,就像error_reporting。该位掩码将与由error_reporting表示的位掩码进行逻辑“或”运算,从而肯定应显示哪些错误。此设置只能在php.ini中进行,不管应用程序使用ini_set()
设置何值,都会强制显示某些错误。github
该功能仅适用于
Xdebug> = 2.3
类型:int,默认值:0,
这个参数容许您配置掩码,以肯定显示哪些通知和(或)警告转换为错误。您能够配置由PHP生成的通知和警告,以及您本身生成的通知和警告(经过trigger_error()
)。数组
例如,要将strlen()
(不带参数)的警告转换为错误,您应该这样作:浏览器
ini_set('xdebug.halt_level', E_WARNING); strlen(); echo "Hi!\n";
这将致使错误信息的显示以及脚本的停止。echo "Hi!\n";
将不会被执行。cookie
该设置是一个位掩码,因此要将全部通知和警告转换为全部应用程序的错误,能够在php.ini中设置:函数
xdebug.halt_level = E_WARNING | E_NOTICE | E_USER_WARNING | E_USER_NOTICE
位掩码只支持上面提到的四个级别。布局
类型:int,默认值:256
控制无限递归保护的保护机制。此设置的值是在脚本停止以前所容许的嵌套函数的最大级别。优化
在Xdebug 2.3以前,默认值是100。
该功能仅适用于Xdebug> = 2.3
类型:int,默认值:-1。
控制堆栈跟踪中显示的堆栈帧的数量,包括PHP错误堆栈跟踪期间的命令行以及HTML跟踪的浏览器。
该功能仅适用于
Xdebug> = 2.1
类型:boolean,默认值:0。
若是此设置为1,则Xdebug将禁用@操做符
,以便通知,警告和错误再也不隐藏。
正常状况返回调用类,若是堆栈帧不存在返回NULL
,堆栈帧没有类信息返回FALSE
此函数返回定义当前方法的类的名称,或者 `FALSE若是没有类与此调用关联。
Example:
<?php class Strings { static function fix_string($a) { echo xdebug_call_class(). "::". xdebug_call_function(). " is called at ". xdebug_call_file(). ":". xdebug_call_line(); } } $ret = Strings::fix_string( 'Derick' ); ?>
Returns:
Called @ /home/httpd/html/test/xdebug_caller.php:17 from ::{main}
要从较早的堆栈帧中检索信息,请使用可选的 $depth
参数。参数为1
时返回执行xdebug_call_class()
方法的调用信息的值:
Example:
<?php class Strings { static function fix_string( $a ) { echo xdebug_call_class( 1 ). "::". xdebug_call_function( 1 ). " is called at ". xdebug_call_file( 1 ). ":". xdebug_call_line( 1 ); } } $ret = Strings::fix_string( 'Derick' ); ?>
Returns:
Strings::fix_string is called at /home/httpd/html/test/xdebug_caller:17
参数为2
(默认值)时,返回调用当前方法的方法调用信息:
Example:
<?php class Strings { static function fix_string( $a ) { echo xdebug_call_class( 2 ). "::". xdebug_call_function( 2 ). " is called at ". xdebug_call_file( 2 ). ":". xdebug_call_line( 2 ); } static function fix_strings( array $a ) { foreach ( $a as $element ) { self::fix_string( $a ); } } } $ret = Strings::fix_strings( [ 'Derick' ] ); ?>
Returns:
Strings::fix_strings is called at /home/httpd/html/test/xdebug_caller:25
参数为0
时,返回相应的xdebug_call_*
调用的信息:
Example:
<?php class Strings { static function fix_string( $a ) { echo xdebug_call_class( 0 ). "::". xdebug_call_function( 0 ). " is called at ". xdebug_call_file( 0 ). ":". xdebug_call_line( 0 ); } static function fix_strings( array $a ) { foreach ( $a as $element ) { self::fix_string( $a ); } } } $ret = Strings::fix_strings( [ 'Derick' ] ); ?>
Returns:
::xdebug_call_function is called at /home/httpd/html/test/xdebug_caller:13
返回调用文件,若是堆栈帧不存在返回NULL
该函数返回从当前函数/方法执行的文件名。
要从较早的堆栈帧中检索信息,请使用可选的 $depth
参数。
有关示例和更普遍的信息,请参见xdebug_call_class()
若是堆栈帧不存在返回NULL
,若是堆栈帧没有函数/方法信息返回FALSE
。
该函数返回当前函数/方法的名称。
要从较早的堆栈帧中检索信息,请使用可选的 $depth
参数。
有关示例和更普遍的信息,请参见xdebug_call_class()
返回改函数调用所在行号,若是堆栈帧不存在返回NULL
。
这个函数返回从当前函数/方法被调用的行号。
要从较早的堆栈帧中检索信息,请使用可选的 $depth
参数。
有关示例和更普遍的信息,请参见xdebug_call_class()
禁用堆栈跟踪
禁止在错误状况下显示堆栈跟踪。
启用堆栈跟踪
在错误状况下启用显示堆栈跟踪。
该功能仅适用于
Xdebug> = 2.1
返回全部收集的错误消息。
此函数返回收集缓冲区中的全部错误,其中包含使用xdebug_start_error_collection()
开始错误收集时存储在那里的全部错误 。
默认状况下,这个函数不会清除错误收集缓冲区。当该函数的参数为true
时缓冲区内容将被清除。
此函数返回一个字符串,其中包含格式化为“Xdebug table”的全部收集的错误。
该功能仅适用于
Xdebug> = 2.1
经过调用PHP的header()
函数返回全部的头文件。
返回全部使用PHP的header()
函数设置的头文件,或者PHP内部设置的任何其余头文件(好比经过setcookie()
),做为返回数组内容。
Example:
<?php header( "X-Test", "Testing" ); setcookie( "TestCookie", "test-value" ); var_dump( xdebug_get_headers() ); ?>
Returns:
array(2) { [0]=> string(6) "X-Test" [1]=> string(33) "Set-Cookie: TestCookie=test-value" }
返回是否启用堆栈跟踪
返回是否在出现错误时显示堆栈轨迹。
返回当前的内存使用状况
返回脚本使用的当前内存量。在PHP 5.2.1以前,这只有在使用--enable-memory-limit
进行编译时才有效。从5.2.1版本开始,这个函数老是可用的。
返回峰值内存使用状况
返回脚本直到如今使用的最大内存量。在PHP 5.2.1以前,这只有在使用--enable-memory-limit
进行编译时才有效。从5.2.1版本开始,这个函数老是可用的。
开始记录全部的通知,警告和错误,并阻止他们的显示。该功能仅适用于Xdebug> = 2.1
当执行这个函数时,Xdebug将致使PHP不显示任何通知,警告或错误。相反,它们根据Xdebug的正常错误格式化规则(即带有红色感叹号的错误表)格式化,而后存储在缓冲区中。这将继续,直到你调用xdebug_stop_error_collection()
。
这个缓冲区的内容能够经过调用xdebug_get_collected_errors()
来获取 ,而后显示。若是你想防止Xdebug强大的错误报告功能破坏你的布局,这是很是有用的。
中止记录由xdebug_start_error_collection()
启动的全部通知,警告和错误。该功能仅适用于Xdebug> = 2.1
执行此函数时,由xdebug_start_error_collection()
启动的错误收集将 被停止。存储在收集缓冲区中的错误不会被删除,仍然能够经过xdebug_get_collected_errors()
获取 。
返回当前时间索引
从脚本开始以秒为单位返回当前时间索引。
Example:
<?php echo xdebug_time_index(), "\n"; for ($i = 0; $i < 250000; $i++) { // do nothing } echo xdebug_time_index(), "\n"; ?>
Returns:
0.00038003921508789 0.76580691337585