关于thinkphp生成的验证码不显示问题解决

4 篇文章 0 订阅

自己遇到的,之前还正常显示,后面突然不显示,只有一个小 “X”图标

后面查询到方法解决如下,图片输出前不能有任何输出

不显示验证码代码:

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


加入 ob_clean()

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

再刷新一次页面,就可以显示了。
资料说明如下:

    默认配置下,php输出是先到输出缓冲区(output_buffering),只要数据还没有真正发送到浏览器(严格来说是tcp buffer),
那么还是有机会清空先前的缓冲区里面的数据,使用内置的ob_clean函数即可。注意:ob_clean 只是清空当前缓冲区的数据,
如果先前输出的数据大于缓冲区,那么一部分数据已经发送,发送的这部分数据是无法清空的。另外如果禁用php输出缓冲区,
那么ob_clean起不到任何效果的。
 

其他解决方案:

是代码页面有 BOM,需要处理,具体方案地址

http://www.cnblogs.com/wangyuman26/p/5960310.html

或者:

直接使用本博客的去BOM简单方法

http://blog.csdn.net/hello_sgw/article/details/77119443

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值