《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。

关于 LearnKu
高认可度评论:
理解这个问题之前需楼主去补一波
ServiceProvider的知识点了 :)问题的关键在于
Illuminate\Redis\RedisServiceProvider:Laravel在启动
RedisServiceProvider时,会将redis作为一个单例注册在应用容器中,而生成单例的那一刻,redis的所有配置已经作为一份拷贝定格在RedisManager之中了,所以你后面动态填加的redis2配置是没有效果的。(追踪源码一切就真相大白了^_^)那么你可能还会问,为什么我的
redis1也是动态填加却效果呢?这是因为RedisServiceProvider这个服务是一个延迟加载的服务(仔细观察他的$defer属性是true),延迟加载的意义就在于第一次使用时才去加载服务。在你的代码里redis1配置是在第一次调用服务(26行)之前配置的,此时redis单例还未生成,所以这个配置是有效的。希望能帮到你。
理解这个问题之前需楼主去补一波
ServiceProvider的知识点了 :)问题的关键在于
Illuminate\Redis\RedisServiceProvider:Laravel在启动
RedisServiceProvider时,会将redis作为一个单例注册在应用容器中,而生成单例的那一刻,redis的所有配置已经作为一份拷贝定格在RedisManager之中了,所以你后面动态填加的redis2配置是没有效果的。(追踪源码一切就真相大白了^_^)那么你可能还会问,为什么我的
redis1也是动态填加却效果呢?这是因为RedisServiceProvider这个服务是一个延迟加载的服务(仔细观察他的$defer属性是true),延迟加载的意义就在于第一次使用时才去加载服务。在你的代码里redis1配置是在第一次调用服务(26行)之前配置的,此时redis单例还未生成,所以这个配置是有效的。希望能帮到你。
ServiceProvider这个确实不了解, 看文档吗,还是有其他推荐的方法吗?那有什么办法让
redis单例生成之后销毁尼, unset 没有作用?@coodeer@coodeer 因为是想从本地的
redis读取其他 机器的redis配置 ,再去connection连接所以有什么办法可以销毁尼?
提供一条参考思路:修改配置后,重新绑定一次
redis单例,然后清除Facade实例即可。(或许还有更好的方法)
@coodeer
"Class 'Illuminate\Redis\RedisManager' not found"
这是跟laravel 的版本有关吗?
@英雄没有斗篷
5.3及以前的版本换成
Illuminate\Redis\Database应该就好了:@coodeer 可以了 , 非常感谢啊 ! 我自己完全不知道怎么弄
配置过 redis 哨兵模式吗?
@leung0826 这个没了解过