Xdebug文档(五) 代码覆盖分析,xdebug文档
代码覆盖分析能在请求时让你知道脚本哪一行(或哪一段)在执行。
相关设置
xdebug.coverage_enable
类型: boolean, 默认值: 1, 始于
Xdebug >= 2.2
如果设为0, Xdebug不会设置内置结构来允许代码分析,这能加速xdebug快些,不过代码覆盖分析将不会工作。
相关函数
boolean xdebug_code_coverage_started()
返回布尔值查看代码覆盖分析是否已经开始。
Example:
<?<span>php </span><span>var_dump</span><span>(xdebug_code_coverage_started()); xdebug_start_code_coverage(); </span><span>var_dump</span><span>(xdebug_code_coverage_started()); </span>?>
Returns:
bool(false)
bool(true)
array xdebug_get_code_coverage()
返回一结构包含脚本哪一行(包括引用文件)在执行。以下展示代码覆盖指定某一文件示例:
Example:
<?<span>php xdebug_start_code_coverage(); </span><span>function</span> a(<span>$a</span><span>) { </span><span>echo</span> <span>$a</span> * 2.5<span>; } </span><span>function</span> b(<span>$count</span><span>) { </span><span>for</span> (<span>$i</span> = 0; <span>$i</span> < <span>$count</span>; <span>$i</span>++<span>) { a(</span><span>$i</span> + 0.17<span>); } } b(</span>6<span>); b(</span>10<span>); </span><span>var_dump</span><span>(xdebug_get_code_coverage()); </span>?>
Returns:
array
'/home/httpd/html/test/xdebug/docs/xdebug_get_code_coverage.php' =>
array
5 => int 1
6 => int 1
7 => int 1
9 => int 1
10 => int 1
11 => int 1
12 => int 1
13 => int 1
15 => int 1
16 => int 1
18 => int 1
void xdebug_start_code_coverage( [int options] )
开始代码覆盖分析
该函数开始收集代码覆盖信息。该信息由二维数组形成,一维索引为执行文件名二级索引为行号。元素值表示该行是否被执行或它拥有未能到达的行。
每行返回的值:
- 1: 该行已执行过
- -1: 该行未被执行
- -2: 该行没有可执行的代码
-1 值只有在 XDEBUG_CC_UNUSED 开启后才会返回,而 -2 值只有XDEBUG_CC_UNUSED 和 XDEBUG_CC_DEAD_CODE 同时开启才会返回。
函数有两个以枚举值的选项:
XDEBUG_CC_UNUSED
开启检测代码并说明哪行为可执行代码。无此项则返回的数组只包含实际执行过的行号。
XDEBUG_CC_DEAD_CODE
开始额外的分析说明哪些代码能被执行。
如果开启这些选项执行大幅减慢代码覆盖分析速度。
以下示例展示如何使用选项:
Example:
<?<span>php xdebug_start_code_coverage( XDEBUG_CC_UNUSED </span>|<span> XDEBUG_CC_DEAD_CODE ); </span>?>
void xdebug_stop_code_coverage( [int cleanup=true] )
停止代码覆盖分析
该函数停止收集信息,该信息在内存中会被清除。如果你传递“false”参数,则代码覆盖信息不会被清除而能让你再次使用 xdebug_start_code_coverage() 恢复信息收集。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

SublimeText3漢化版
中文版,非常好用

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具