thinkphp3.2 在入口插入 echo 语句时为什么验证码无法显示响应?

作者站长头像
站长
· 阅读数 11

这是模板中的验证码:

<img id="imgVerify" style="cursor:pointer;" src="/index.php/Admin/Admin/vertify" onclick="fleshVerify();">

虽然图片无法显示,但F12查看响应头是200

thinkphp3.2 在入口插入 echo 语句时为什么验证码无法显示响应?

我在入口插入一个echo语句时,验证码就无法显示。去掉这个echo时,就能正常显示。

thinkphp3.2 在入口插入 echo 语句时为什么验证码无法显示响应?

换成tp5,在同样位置echo,就不影响验证码:

thinkphp3.2 在入口插入 echo 语句时为什么验证码无法显示响应?

回复
1个回答
avatar
test
2024-07-11

入口有:ob_start('ob_gzhandler'); 所以验证码类里面用:ob_end_clean()可以,但用 ob_clean()不可以。因为后面输出图片的是:各种 header,还有imagepng 这些不能用gzip压缩格式

回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容