【发布时间】:2010-09-21 20:16:56
【问题描述】:
我的大多数 PHP 应用程序都有一个 ob_start 开头,运行所有代码,然后输出内容,有时会在所有内容完成后进行一些修改。
ob_start()
//Business Logic, etc
header->output();
echo apply_post_filter(ob_get_clean());
footer->output();
这可确保 PHP 错误显示在网站的内容部分中,并且错误不会干扰 header 和 session_* 调用。
我唯一的问题是,对于一些大页面,PHP 内存不足。我该如何阻止这种情况发生?
一些想法:
- 将所有缓冲内容写入临时文件并输出。
- 当缓冲区达到一定大小时,输出它。虽然这可能会干扰后置过滤器。
- 提高内存限制 (thanx @troelskn)。
这些方法的缺点是什么?尤其是提高内存限制?
【问题讨论】: