我的PHP应用程序大多都在开头有一个ob_start,然后运行所有代码,最后在一切完成之后输出内容,有时会进行一些修改。
ob_start()
//Business Logic, etc
header->output();
echo apply_post_filter(ob_get_clean());
footer->output();
这将确保在网站内容部分显示PHP错误,并且错误不会干扰header和session_*调用。
我的唯一问题是,对于一些大型页面,PHP会耗尽内存。我该如何防止这种情况发生?
一些想法:
1. 将所有缓冲的内容写入临时文件并输出。 2. 当缓冲区达到一定大小时输出它。虽然这可能会干扰后置过滤器。 3. 提高内存限制(感谢 @troelskn)。
每种方法的缺点是什么?特别是提高内存限制?