# [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
尚未實作,待研究