PHP脚本没有达到最终 - 查询执行时间太长?

时间:2014-01-07 14:15:06

标签: php sql timeout

我们的Web应用程序的PHP页面有一个相当复杂的查询。在生产网站上,这需要大约20秒才能完成,然后显示结果。我在本地桌面上运行了该站点的测试版本。当我直接在PGAdmin中运行(Postgres)查询时,大约需要3分钟才能完成。

所以我的桌面很慢 - 现在不是真正的问题。然而,PHP会退出加载页面并且不显示任何结果。不显示结果后应显示的纯文本。搜索解决方案我发现我可以在页面上设置PHP的max_execution时间。我是在页面的第一行使用以下代码完成的:

ini_set('max_execution_time', 300); //300 seconds = 5 minutes

这没有什么区别。页面加载在6秒后停止。我该怎么做才能显示结果?

1 个答案:

答案 0 :(得分:0)

使用set_time_limit()

您应该阅读此函数的documentation,其中显示:警告:当PHP以安全模式运行时,此功能无效。除了关闭安全模式或更改php.ini中的时间限制外,没有其他解决方法。

因此请确保您的PHP没有以安全模式运行,否则无法设置或修改脚本执行时间。