请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

12章最后一节报错: not support: redis

代码:
// $result = Cache::store(‘redis’)->zRangeByScore(‘order_status’, 0, time(), [‘limit’ => [0,1]]);
$result = Cache::zRangeByScore(‘order_status’, 0, time(), [‘limit’ => [0,1]]);

用了两种方式都试了试,一个是config默认redis,一个是默认file在用 Cache::store(‘redis’)方法调用,
但是在用命令行的时候,都报错:
[BadFunctionCallException]
not support: redis

redis在其他地方是正常使用的,之前的章节都可以正常使用,到了这里用命令行就出错了。

在代码最前面输出1截断调试,php命令行是可以调用的,加上redis就报错了。

正在回答

3回答

亲爱的同学你好,从这个提示来看你应该是没有安装redis 扩展

1 回复 有任何疑惑可以回复我~
  • 提问者 谨守初心 #1
    我安装了redis扩展了,phpinfo里也可以看见,其他地方使用是没有问题的,之前的redis 操作都可以,就是这里不行了。
    回复 有任何疑惑可以回复我~ 2020-03-07 14:19:32
  • singwa #2
    你好你配置文件截图我看看
    回复 有任何疑惑可以回复我~ 2020-03-07 14:20:45
  • 提问者 谨守初心 回复 singwa #3
    老师,我截图上传了,我刚才又试了试,通过浏览器访问,方法调用的方式去调用checkOrderStatus方法,是可以成功执行的,redis的方法也成功执行了。
    回复 有任何疑惑可以回复我~ 2020-03-07 14:29:58
caixs 2020-04-01 18:00:43

我也遇到这个问题,php -m找不到redis扩展,好像是因为mamp下的php.ini有多个,cli下的php.ini在

/Applications/MAMP/bin/php/php7.3.7/conf下,我是修改了这个目录下的php.ini,添加了redis扩展才可以,php -m 也找得到redis


0 回复 有任何疑惑可以回复我~
  • singwa #1
    你本地有多个 PHP吗?
    回复 有任何疑惑可以回复我~ 2020-04-02 00:08:39
  • caixs 回复 singwa #2
    mac自带的php和mamp的php,平时使用都是mamp的php,然后按装过redis扩展,但是本地的没有,用命令行执行的那个php think order 用的是本地的php,然后我就给改成用mamp的php
    回复 有任何疑惑可以回复我~ 2020-04-02 09:42:17
提问者 谨守初心 2020-03-07 14:28:03

缓存配置截图:

https://img1.sycdn.imooc.com//szimg/5e633ee80903b5a207090898.jpg

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信