output_buffering,该如何解决

WBOY
Release: 2016-06-13 12:56:36
Original
1070 people have browsed it

output_buffering
看缓冲区 有好多疑问哟  
各位前辈指教
我打开php.ini  看到

; output_buffering
;   Default Value: Off
;   Development Value: 4096
;   Production Value: 4096

output_buffering这个是注释掉的
按我的理解 就是 没有启动php的缓冲区

但是我在程序中写

echo "123123";
ob_end_clean();

就没有输出到页面上
那就是说应该是 echo是 先写入缓冲区的
然后被ob_end_clean干掉了


我的问题就是  如果是注释掉的
缓冲区 是开着的  还是 关着的???    跟环境有关系吗


------解决方案--------------------
output_buffering = 4096

你确定你那里是注释的???
这个选项在php.ini中默认是打开的,除非你手动修改过它。
我将这个注释掉之后。

echo 123;
ob_end_clean();

会立刻输出123,并且提示Notice: ob_end_clean(): failed to delete buffer. No buffer to delete in /Users/angryfrog/website/test.php on line 3。

没有buffer可被删除,也就是说根本没有开启缓冲。
除非在头部加上ob_start();才不会输出123.
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template