2016-12-30 69 views
0

我使用的是Laravel 5.3,並且我有一個配置文件,它調用了trans()函數。當我運行php artisan,它會給我一個錯誤如何使用translate laravel配置文件

Class translator does not exist 

這是我的配置文件

<?php 

return [ 
'modules' => [ 
     'name'  => trans('menus.module'), 
     'url'  => 'modules', 
    ], 
]; 
+0

你試過'作曲家更新'重新加載類映射 – Cybersupernova

+0

@Cyber​​supernova沒有,這將無法正常工作。僅僅因爲此時'TranslatorServiceProvider'或任何服務提供者尚未加載。 –

回答

0

答案很簡單:你不能。

長答案: 配置文件在引導應用程序之前加載,所以沒有Translator類,因爲它尚未加載。

如果你打算緩存配置,你也應該不這樣做,正如你所看到的,它不會按預期工作。

你可以在運行時通過做這樣的事情來改變它。

$config = Config::get('Your Key'); 
$trans = trans($config);