您现在的位置是:首页 > ThinkPHP

李清波 2015-10-15 ThinkPHP 829

thinkphp验证码不能正常显示以及解决办法

在调用验证码之前加上 ob_clean();


实例:

//验证码
public function verify(){
    $Verify = new \Think\Verify();
    $Verify->entry();
}


改成


//验证码
public function verify(){
    ob_clean();
    $Verify = new \Think\Verify();
    $Verify->entry();
}


在生成验证码之前添加ob_clean函数


这样的话,保存再刷新一次,验证码就出现了

分析:
1、ob_clean这个函数的作用:
用来丢弃输出缓冲区中的内容,如果你的网站有许多生成的图片类文件,那么想要访问正确,就要经常清除缓冲区


2、在出现问题的页面查看源代码,发现在页面尾部出现了一堆其他代码(原因不明)


原因:

1、大部分原因都是因为BOM头引起的,也就是说,我们在生成图片之前已经有空白或者其他东西输出了,所以导致生成图片错误。

评论