>백엔드 개발 >PHP 튜토리얼 >ob_end_clean 出错了,求教!

ob_end_clean 出错了,求教!

WBOY
WBOY원래의
2016-06-23 14:05:18956검색

我想用set_error_handler来统一收集错误,在打印自定义错误提示前,我用了ob_end_clean();但是报错了

PS:我开启了gzip

测试代码:

error_reporting(E_ALL);set_error_handler(array('test', 'handle_error'));if(function_exists('ob_gzhandler')) {    ob_start('ob_gzhandler');} else {    ob_start();}class test {        public static function handle_error($errno, $errstr, $errfile, $errline) {        if($errno) {             debug::system_error($errstr);        }    }}class debug {        public static function system_error($message) {        ob_end_clean();                echo $message;                exit;    }}echo '错误前信息<br/>';trigger_error('错误内容');


上述代码测试,就报错了。。。ob_end_clean()注释掉就没关系。。。

我对ob_start理解不深,求赐教!


回复讨论(解决方案)

顺便贴一下错误:
chrome浏览器下
错误 330 (net::ERR_CONTENT_DECODING_FAILED):未知错误

error_reporting(E_ALL);set_error_handler(array('test', 'handle_error'));if(function_exists('ob_gzhandler')) {    ob_start('my_ob_gzhandler');} else {    ob_start();}class test {    public static function handle_error($errno, $errstr, $errfile, $errline) {        if($errno) {            debug::system_error($errstr);        }    }}class debug {    public static function system_error($message) {        ob_clean();        echo $message;        exit;    }}echo '错误前信息<br/>';trigger_error('ddddddddddddddddddddddddd误内容');function my_ob_gzhandler($buffer,$mod){    header("Content-Encoding: gzip");    return gzencode($buffer, 9, FORCE_GZIP);}

PHP code?1234567891011121314151617181920212223242526272829303132333435363738394041error_reporting(E_ALL); set_error_handler(array('test', 'handle_error'));  if(function_exists('ob_gzhandl……

人才啊,,,感谢

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.