当前位置:  开发笔记 > 编程语言 > 正文

输出缓冲器如何恶化性能

如何解决《输出缓冲器如何恶化性能》经验,为你挑选了1个好方法。

我正在编写一个PHP脚本,在我的header()功能之前我已经将文本打印到浏览器,因此导致我的header()功能给我一个众所周知的错误:

警告:无法修改标头信息 - 已发送的标头.

现在我的问题是,我有使用ob_start()ob_flush()header()函数之前和之后的意图.但我曾经听说过像输出缓冲区这样的东西会对一个应用程序的性能产生负面影响.那是真的吗?

或者我应该坚持打印Javascript函数来重定向页面的想法.

谢谢你的时间.



1> strager..:

我们应该忘记小的效率,大约97%的时间说:过早的优化是所有邪恶的根源.

测试ob_start和朋友,看看性能差异是否重要.如果是,请寻找替代方案.

最简单的选择是header()在打印前移动呼叫.

因为您可能会执行重定向,例如:

header('Location: /new/location/');

在此header()调用之前,您不应该打印任何内容,因为客户端无论如何都不会对您打印的数据执行任何操作(除非我缺少关于HTTP的内容).

(Javascript不是重定向的好选择,也不是meta刷新,除非你想出于某种原因检测Javascript.)

推荐阅读
夏晶阳--艺术
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有