tp6中使用think-captcha在控制器中获取不到验证码
环境配置 : tp6 lamp
问题描述 : 在控制器中获取不到生成的验证码
尝试过的方法 :
按照官方文档中的方法
- 报错 : 找不到该函数,查找源码后,发现该函数定义在验证码源码中的
helper
文件中,而该文件并没有命名空间,而即便我用require_once
引入也不行;我也尝试过把captcha
函数中的代码复制到控制器中,也不行
- 报错 : 找不到该函数,查找源码后,发现该函数定义在验证码源码中的
尝试调用生成验证码类
Captcha
use think\captcha\Captcha; public function getCaptcha() { return (new Captcha())->create(); }
- 报错如下 :
Captcha
文件的命名空间如下
- 报错如下 :
- 所以求各位大哥指教下这个到底是怎么回事?
在你的测试页面使用以下形式试试
helper.php
不需要命名空间,这个文件导入了足够多的类。composer dump-autoload
试一下think-captcha 模块里不是有一个
CaptchaController.php
文件吗,可以去研究下,能得出你想要的结果。你引用的类有问题,所以会报找不到
think\captcha\Captcha
。在你的 lamp 环境下访问
你的域名或者 ip /testcaptcha/verify/getcaptcha