为了账号安全,请及时绑定邮箱和手机立即绑定

分析PHP代码

分析PHP代码

喵喔喔 2019-12-25 15:02:20
我想找到一种方法来确定PHP中的每个函数以及PHP中的每个文件需要花费多长时间。我有一个旧的遗留PHP应用程序,试图在其中找到“粗糙点”,因此,我想客观地确定哪些例程和页面需要花费很长时间来加载。是否有任何允许这样做的预制工具,还是我只能使用microtime并构建自己的性能分析框架?
查看完整描述

3 回答

?
翻翻过去那场雪

TA贡献2065条经验 获得超13个赞

实际上,上周我已经做了一些优化工作。XDebug确实是必经之路。

只需将其启用为扩展名(由于某种原因,它将无法在我的Windows机器上与ze_extension一起使用),使用xdebug.profiler_enable_trigger = On设置您的php.ini,并使用XDEBUG_PROFILE = 1调用您的普通网址(获取或发布)变量来描述该请求。没有比这更简单的了!

此外,我真的可以推荐webgrind,这是一个基于网络(php)的Google Summer Of Code项目,可以读取和解析您的调试输出文件!


查看完整回答
反对 回复 2019-12-25
?
慕妹3242003

TA贡献1824条经验 获得超6个赞

这是一个不错的提示。


当您使用XDebug来分析您的PHP时,请设置profiler_trigger并将其用于书签中以触发XDebug分析器;)


javascript:if(document.URL.indexOf('XDEBUG_PROFILE')<1){var%20sep=document.URL.indexOf('?');sep%20=%20(sep<1)?'?':'&';window.location.href=document.URL+sep+'XDEBUG_PROFILE';}


查看完整回答
反对 回复 2019-12-25
?
米琪卡哇伊

TA贡献1998条经验 获得超6个赞

看一下xdebug,它可以进行深度分析。而且这里是一个解释如何使用Xdebug的。


Xdebug的探查器是一个功能强大的工具,它使您能够分析PHP代码并确定瓶颈,或者通常查看代码的哪些部分运行缓慢并可以提高速度。Xdebug 2中的事件探查器以cachegrind兼容文件的形式输出配置信息。


荣誉对SchizoDuckie为提 Webgrind。这是我第一次听说。非常有用(+1)。


否则,您可以在Linux上使用kcachegrind或它的较小的衍生版本wincachegrind。这两个应用程序都将读取xdebug的事件探查器输出文件,并对它们进行汇总,以使您欣赏愉快。


查看完整回答
反对 回复 2019-12-25
  • 3 回答
  • 0 关注
  • 669 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信