<p>我的解决方法<br/>在最上面加ob_start(),不知道有没有什么坏处....改php.ini看起来不是很好,要不怎么默认不开...<br/><br/>笨方法:把错误警告全不显示!<br/>@......<br/><br/>解决方案:<br/><br/>1)适用于有权限编辑PHP.INI的人<br/><br/>打开php.ini文件<br/>找到output_buffering =改为on或者任何数字,我的WAMPSERVER里面是output_buffering =4096不知道什么什么意思。如果是IIS6,请一定改为ON,不然你的PHP效率会奇慢。<br/><br/>2)虚拟主机,不能编辑PHP。<br/>在你的空间根目录下建立一个.htaccess文件,内容如下:<br/>AllowOverride All <br/>PHP_FLAG output_buffering On <br/><br/>不幸的情况是:还是不行?全部网页都不能显示啦?<br/>那么,你可以打电话骂一通空间商,然后让他给你把apache的.htaccess AllowOverride打开<br/><br/>3)在PHP文件里解决<br/>ob_start()<br/>启用output buffering机制。 Output buffering支持多层次 -- 例如,可以多次调用 ob_start() 函数。<br/><br/>ob_end_flush()<br/>发送output buffer(输出缓冲)并禁用output buffering机制。<br/><br/>ob_end_clean()<br/>清除output buffer但不发送,并禁用output buffering。<br/><br/>ob_get_contents()<br/>将当前的output buffer返回成一个字符串。允许你处理脚本发出的任何输出。<br/><br/>原理:<br/>output_buffering被启用时,在脚本发送输出时,PHP并不发送HTTP header。相反,它将此输出通过管道(pipe)输入到动态增加的缓存中(只能在PHP 4。0中使用,它具有中央化的输出机制)。你仍然可以修改/添加header,或者设置cookie,因为header实际上并没有发送。当全部脚本终止时,PHP将自动发送HTTP header到浏览器,然后再发送输出缓冲中的内容。<br/><br/></p>
T:0.006730s,M:246.02 KB
返回顶部 留言