thinkPHP5.0验证码不显示
1、使用composer安装时,验证码无法正常显示
主要是因为验证码扩展库的版本安装不正常,官方的5.0
版本的扩展库版本号都是1.*
,默认安装的是2.0版本,2.0
版本均为ThinkPHP5.1
版本专用
composer require topthink/think-captcha 1.*
2、验证码不显示,返回200状态码
(1)服务器配置问题
主要看服务器的GD库是否安装或者正常开启,一般出现这种错误的机率比较小
(2)文档编码格式问题(BOM)
BOM介绍
BOM是Byte Order Mark 的缩写,中文名:字节顺序标记,UTF-8不需要BOM来表明字节顺序,但可以用BOM来表明编码格式
问题原因
PHP并不会忽略BOM所在的读取,包含或者引用这些文件时,会把BOM作为读为该文件开头正文的一部分,所以会造成PHP程序无法正确执行,使用记事本打开文件编辑会造成这个原因
解决办法
thinkPHP中一般验证码不显示,是因为配置文件(应用配置、扩展配置)的编码格式问题,移除文件的BOM即可,可以用notepad++打开文件,在编码中选择以UTF-8无BOM格式编码,保存
也可以用PHPstorm,在PHPstorm右键文件点击Remove BOM