# [laravel]修改locale設置 ###### tags: `laravel`,`locale` 2025/3/16/更新: laravel 11(第幾版開始不確定) 可下此指令 ```c! php artisan lang:publish ``` 會產生lang資料夾. 從9開始,lang路徑跟以前不同.須注意. 新增一個zh_TW/messages.php ```php= <?php return [ 'Email' => '電子郵件', 'Password' => '密碼', ]; ``` .env APP_LOCALE=zh_TW blade ```htmlembedded= //注意重點在於檔案.翻譯名稱,不能只打翻譯名稱 <x-label for="username" value="{{ __('messages.Email') }}" /> ``` 其他可在controller用的語法 ```php= <?php App::setLocale('zh_TW'); $locale = App::currentLocale(); //這個可以拿來搭配動態切換語系,待研究 Session::put('locale', 'zh_TW'); ``` --- 2022/8/21更新: https://github.com/caouecs/Laravel-lang 已更新語言包的內容配置跟安裝方式, 可從[這裡](https://github.com/yyc1217/laravel-lang-zh_TW/blob/master/validation.php)下載中文版的validation.php,手動創建resources\lang\zh_TW資料夾把檔案丟進去. 其他locale檔案可能要自行翻譯,或是從[這裡](https://github.com/caouecs/Laravel-lang)去複製0.0 ------ 參考資料: https://github.com/caouecs/Laravel-lang https://medium.com/yish/laravel-%E9%85%8D%E7%BD%AE%E5%9C%A8%E5%9C%B0%E5%8C%96-f5e83a0a11ef ## 下載語言包 從[這裡](https://github.com/caouecs/Laravel-lang)下載zip, 將zh_TW.json跟zh_TW資料夾貼至 resources\lang ## 修改app.php config/app.php ```php //... 'locale' => 'zh_TW', //... ``` ## 使用方式 ### 呼叫zh-TW.json中定義的詞 view ```php <div> {{ __('some_name') }} </div> ``` ### 呼叫zh-TW資料夾裡特定檔案中定義的詞 view ```php <div> {{ __('file_name.some_name') }} </div> ``` --- 另一種方式的套件連結如下: https://github.com/mcamara/laravel-localization 可將網址變成語系結尾,如blabla.com/zh-tw 尚未實作,待研究