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 關注
- 99 瀏覽
添加回答
舉報
0/150
提交
取消