Cache::remember如果尚未设置,我正在尝试使用来获取一些数据或将其存储在缓存中。$artists = Cache::remember('artists', 60, function(\Barryvanveen\Lastfm\Lastfm $lastfm){ return $lastfm->userTopArtists('un')->period(\Barryvanveen\Lastfm\Constants::PERIOD_WEEK)->limit(5)->get();});但我收到一个Symfony\Component\Debug\Exception\FatalThrowableError错误:Too few arguments to function App\Http\Controllers\HomeController::App\Http\Controllers\{closure}(), 0 passed in .../vendor/laravel/framework/src/Illuminate/Cache/Repository.php on line 383 and exactly 1 expected我在视图控制器中执行此操作,但已将上面的代码减少为 Tinker 中的可重现错误。这是在 Laravel 6.9.0 中,使用默认的file缓存驱动程序。
1 回答
扬帆大鱼
TA贡献1799条经验 获得超9个赞
我设法让这个工作。而不是在闭包函数参数中传递类实例,它需要使用use
:
function() use (\Barryvanveen\Lastfm\Lastfm $lastfm) {
- 1 回答
- 0 关注
- 82 浏览
添加回答
举报
0/150
提交
取消