高性能 PHP7 * 调试和分析

每个程序开发者在实际开发过程中都会遇到种种问题,但却不知道具体发生了什么问题,也不知道这些问题为何会发生。大多数时候可能是逻辑或数据的问题,这些问题通常难以解决,而调试是一种找出症 结所在并解决它们的手段。同样地,我们经常需要弄清楚一个脚本程序消耗了多少资源,包括内存消耗、 CPU以及执行时间。

本章主要包括以下内容:

  • Xdebug
  • 使用Sublime Text 3调试
  • 使用Eclipse调试
  • 使用Xdebug
  • 分析 PHP DebugBar

Xdebug

Xdebug是一种PHP扩展,为PHP脚本提供了调试和分析信息。

  • 官方 xdebug 下载地址,需要仔细分析和选择要下载的对应版本,否则无法调试。
  • 可以在 https://xdebug.org/wizard.php 表单中输入复制的 phpinfo() 内容从而找到对应版本。
  • 下载对于版本的 xdebug-xxx.dll 到 php 扩展文件目录,如 D:\xampp\php\ext。
  • 编辑 php.ini :zend_extension = D:\xampp\php\ext\xdebug-xxx.dll。
  • 查看 phpinfo() 检查 Xdebug 是否启动。

使用Sublime Text调试

Sublime Text 编辑器中有一种插件可以用来调试 PHP 代码。但需要安装 Sublime Text 的 xdebug 插件。略。

使用Eclipse调试

Eclipse 几乎支持所有的主流编程语言,包括 PHP。使用 Eclipse 调试需要开启配置。略。

使用Xdebug分析

通过分析,我们能获取应用中每个运行脚本和任务的开销信息。分析可以帮助我们了解一项任务花费 了多长时间,据此可以优化代码,减少时间开销。

Xdebug提供了分析器,但分析器默认是关闭的。打开并编辑配置文件,输入下面两行配置,即可开启分析器:

;开启分析器
xdebug.profiler_enable = On
;指定分析器存放输出文件的目录
;xdebug.profiler_output_dir = "D:\xdebug\profiler"

在浏览器中打开应用,地址中加上 ?XDEBUG_PROFILE=on 参数,如:http://127.0.0.1/test?XDEBUG_PROFILE=on,当页面加载完毕后,在我们指定的目录中将会生成一个cachegrind文件。用文本编辑器打开它会看到一 些文本数据。

cachegrind文件可以用许多工具打开。在Windows上可以用WinCacheGrind。对于Mac则 可以使用qcachegrind。

PHP DebugBar

PHP DebugBar 是另一款性能很好的工具,在它的页面底部有一个美观、全面的调试信息条。该信息条能显示为了调试而添加的自定义消息以及完整的请求信息,包括$_COOKIE、$_SERVER、$_POST、 $_GET数组等。除此之外,PHP DebugBar还能显示出现的异常详情、数据库查询详情。而且,它能显示脚本占用的内存和页面加载的时长。

完整讨论PHP DebugBar在本书中是不现实的,所以这里只进行一个简单的介绍。有许多 关于PHP DebugBar的很棒的文档提供了全面的细节信息和例子,获取地址是 http://phpdebugbar. com/docs/readme.html。

参考:《高性能PHP7,Learning PHP7 High Performance》

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值