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() 恢复信息收集。

PHP如何对接淘宝商品搜索API文档淘宝是中国最大的电子商务平台之一,拥有庞大的商品库存和用户群体。对于开发者来说,通过对接淘宝的API接口,可以获取商品信息、推广活动以及进行交易等功能,从而实现个性化的商业应用。本文将介绍如何使用PHP语言对接淘宝商品搜索API,帮助开发者快速构建自己的电商应用。第一步:注册成为淘宝开发者在开始之前,需要先注册成为淘宝开发

是的,像XDebug这样的调试器会降低PHP服务器的性能。这就是调试器不放置在服务器环境中的原因。它们部署在不同的环境中,以避免不必要的开销。调试消息无法在已处于生产阶段的应用程序中显示。当将调试行为添加到服务器上,调试引擎附加到PHP进程。它开始接收消息以在断点处停止,但这不是必需的行为,因为它会给其他进程带来高性能打击,从而停止PHP解析器。另一方面,当调试器安装后,它们往往会在服务器中打开端口,因为它们不打算在生产环境中使用。在服务器中打开端口就像为黑客打开一扇窥探之门一样糟糕。

ThinkPHP6是一款基于PHP语言开发的Web应用框架,该框架一经推出就受到了广泛的欢迎和使用,目前已经成为国内最流行的一款PHP框架之一。在这篇文章中,我们将深入探讨ThinkPHP6框架的核心,帮助读者更好地掌握该框架。一、框架的概述ThinkPHP6是一个企业级的开发框架,它采用MVC(Model-View-Controller)模式进行开发,拥有

在PHP开发中,调试是不可避免的部分。为了帮助开发者更易于调试自己的代码,PHP8.0在其调试库中引入了一个非常有用的工具:Xdebug。本文将介绍Xdebug的一些主要功能,以及如何使用它来简化PHP调试的过程。Xdebug是一款开源调试工具,可以在PHP应用程序中捕获错误,并提供详细的错误堆栈跟踪信息,以及正在使用的变量。它可以帮助开发人员检测和解决代码

如何使用Hyperf框架进行API文档生成引言:随着互联网的快速发展,API(ApplicationProgrammingInterface)已经成为了不可或缺的一部分,它可以将不同的应用程序连接起来,实现数据的共享与交互。对于开发团队来说,良好的API文档是保证团队协作的重要工具。本文将介绍如何利用Hyperf框架来生成清晰、易用的API文档,通过具体

ThinkPHP6是一个流行的PHP框架,它使用了多种技术让开发变得更加便利。其中一个技术是调试工具,如Xdebug。在这篇文章中,我们将探讨如何在ThinkPHP6中使用Xdebug进行调试。安装与配置Xdebug在开始使用Xdebug前,首先需要安装和启用它。在php.ini文件中,可以添加以下配置:[xdebug]zend_extension=x

Java文档解读:Short类的toHexString()方法功能解析在Java编程中,我们经常需要进行数值的转换和处理。Short类是Java中的一个包装类,用于处理short类型的数据。其中,Short类提供了一个toHexString()方法,用于将short类型的数据转换为十六进制形式的字符串。本文将对toHexString()方法的功能进行解析,并

PHP注释规范:如何使用DocBlock注释编写文档和注解引言:在开发PHP应用程序的过程中,良好的注释是非常重要的。它不仅能够帮助他人理解我们的代码,还可以让我们自己在日后维护代码时更加轻松。DocBlock注释是PHP中一种常用的注释规范,本文将介绍如何使用DocBlock注释进行代码文档和注解的编写。一、什么是DocBlock注释?DocBlock注释


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

WebStorm Mac版
好用的JavaScript开发工具

Atom编辑器mac版下载
最流行的的开源编辑器