toplan/laravel-sms

config/laravel-sms.php里面有function回调,导致php artisan config:cache后程序500

terranc opened this issue · 4 comments

cache后的config为:
image

只要去掉这一段,程序正常。google里说config目录下不能用未定义的函数,估计匿名函数也不可以用。
求完美解决方案。

这个问题还没找到解决方案,是在不行只有改为字符串了

medz commented

这个问题好解决~在配置里面的回掉,使用php的魔术方法__invoke即可解决~配置的地方只需要配置class name即可~然后程序回掉方法调的时候就可以把一个class当成一个function执行,这样就触发了__invoke魔术方法执行~ 这种原理在laravel和slim框架中经常使用~尤其是slim~几乎全部都是通过这种魔术方法得以对class的支持的~

已发布 2.6.1
目前使用的是序列化闭包的方式解决

@toplan Class 'Toplan\Sms\SmsManger' not found 怎么解决呢?在laravel-sms.php中使用 Toplan\Sms\SmsManger::closure($closure) 方法对匿名函数进行配置