如何快速测试我的PHP脚本?

如何快速测试我的PHP脚本?,php,zend-framework,timer,performance,Php,Zend Framework,Timer,Performance,我有一个运行缓慢的脚本,我想知道如何对它计时,并查看哪些修复可以提高速度。有某种PHP定时器吗 更新:我想我应该澄清一下。。。运行缓慢的脚本是我的邮件列表脚本,它向列表中的每个人发送电子邮件。因此,我在一系列订阅者中循环,一个接一个地向他们发送电子邮件。它太慢了,我想看看遍历数组需要多长时间会很有趣。因此,我正在寻找一种快速简便的方法来测试它。您可以测量页面的加载时间,并根据需要进行调整 我喜欢这样的网站,它们告诉你更多关于php的基本需求 当然,使用Zend框架编写php实际上并没有说明您的代

我有一个运行缓慢的脚本,我想知道如何对它计时,并查看哪些修复可以提高速度。有某种PHP定时器吗


更新:我想我应该澄清一下。。。运行缓慢的脚本是我的邮件列表脚本,它向列表中的每个人发送电子邮件。因此,我在一系列订阅者中循环,一个接一个地向他们发送电子邮件。它太慢了,我想看看遍历数组需要多长时间会很有趣。因此,我正在寻找一种快速简便的方法来测试它。

您可以测量页面的加载时间,并根据需要进行调整

我喜欢这样的网站,它们告诉你更多关于php的基本需求

当然,使用Zend框架编写php实际上并没有说明您的代码。您是否遵循zend编码标准

可能对你的时间问题有用

祝你好运

编辑:getrusage函数的额外链接(参见php.net页面上的)

编辑2:对于您的邮件列表,您可以查看phpbench.com,例如循环前的计数,这样可以节省一些时间

你是如何发送邮件的?这可能是一个瓶颈


祝你好运

我所知道并一直使用的最好的东西就是使用分析器。我选择的分析器是一个内置分析器,在PHP设置中安装它相当容易。一旦启动并运行,它可以为您提供各种调试和分析信息,如果您是一个快乐的Linux露营者,那么Xdebug的输出格式可以被惊人的(在堆栈上可视化和报告并绘制应用程序流)读取。没有这些工具我该怎么办

此外,Zend框架在速度方面也存在一些缺陷,主要与没有充分使用Zend_缓存类有关,或者与可能应该使用Zend_注册表类的复杂类层次结构有关


愉快的评测。

使用队列怎么样?对我来说似乎是个好主意,因为随着列表的增长,总有一天你会达到邮件服务器的极限。这种队列有很多,但基本上您只需要一个cron作业和一个数据库表


我正在ZF中构建类似的东西,所以我很想看看会发生什么

我最终使用了一个类似于此的计时器类:


我只是在循环开始时启动了一个计时器,并在每次迭代结束时记录了持续时间。结果发现,平均而言,每封电子邮件需要3到4秒的时间!每次发邮件5分钟有点太多了。是时候重构了…

我只提到了Zend Framework,以防它内置了一些我不知道的东西。这有点奇怪,这意味着ZF要快,就需要使用Zend_缓存。相反,Zend_Registry并不是复杂体系结构的解决方案。奇怪的是,当人们使用Zend框架时,他们会让它变慢,因为他们没有使用它的一个重要部分来使它变快?:)此外,“错综复杂”:1。扭曲的;盘绕。2.复杂的;因此,当您的程序错综复杂时,您可以通过将其转移到Zend_注册表来解决复杂性。这就是它的目的。