如何将 PHP 代码分析器用于 Symfony CLI 脚本? [关闭]
Posted
技术标签:
【中文标题】如何将 PHP 代码分析器用于 Symfony CLI 脚本? [关闭]【英文标题】:How can I use a PHP code profiler for with Symfony CLI scripts? [closed] 【发布时间】:2011-04-27 20:05:24 【问题描述】:我的环境包括带有 Zend Server CE 和 Ubuntu Server、Apache 2 的 OS X。在 php 5.3 上使用 Symfony 1.4 和 Doctrine 进行开发。
我正在寻找一个可以与命令行 PHP 脚本以及 Apache 调用的 PHP 一起使用的分析器。目前我对命令行的需求实际上比网络脚本更迫切。
我已经通过记录 microtime() 间隔进行了一些蛮力计时,效果很好,但我希望能够获得每个被调用函数的总时间,而无需太多手动编码。
虽然我主要关心的是时间分析,但内存分析器也非常有用。与使用 microtime() 类似,我有时不得不在实例化大型对象或集合之前和之后重复调用 memory_get_usage() 以了解它们的占用空间有多大。
【问题讨论】:
各种 PHP 分析工具的讨论:***.com/questions/21133/… 【参考方案1】:XDebug 可以进行分析。嗯...它可以为您收集分析数据。然后,您可以使用其他应用程序来分析这些数据。点击链接了解更多信息。
【讨论】:
我给了你+1,因为你也将我指向 Xdebug。【参考方案2】:webgrind 非常适合我
【讨论】:
+1 用于建议 webgrind。我喜欢它。【参考方案3】:这是我非常满意的最终解决方案。
我尝试通过以下命令安装 XDebug 2.1.1:
pecl install xdebug
但是,由于出现这种错误,这非常失败:
找不到自动配置。请检查 您的 autoconf 安装和 $PHP_AUTOCONF 环境变量。 然后,重新运行此脚本。错误: `phpize' 失败
经过大量搜索,我遇到了其他人在 OS X 上尝试过这个。幸运的是,他们提到安装 Apple Xcode 将提供 autoconf、phpize 和其他所需工具。
我得到了 Xcode 3 并安装了它,然后重新尝试了 pecl install xdebug
,它运行良好。在学习了如何在我的 PHP 的 CLI 实例中启用 xdebug 并弄清楚输出文件的去向之后,我转向了 Webgrind。在查看我的第一个 webgrind 报告的几分钟内,我很高兴地确定了我的 symfony 任务需要优化的区域。这太棒了。
在我的搜索中,我也遇到了this promising page about how to use Xdebug for MEMORY profiling。我还没有尝试过这个,但想在这里添加它以防它帮助其他人。
我收到了一条有用的评论,其中包含指向相关讨论的链接和两个部分答案,它们都很有帮助。我给了每个响应者一个赞成票并表示了这一点。
我希望 S.O.似乎并没有如此强调接受一个答案,但既然如此,我正在写一个更完整的答案并接受它,但确保给所有有帮助的响应者点赞。再次感谢。
【讨论】:
以上是关于如何将 PHP 代码分析器用于 Symfony CLI 脚本? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何将 parse.com php sdk 添加到 symfony
如何在symfony项目中将php版本从7.0降级到5.6?