Laravel默認的locale用的是en,在resouces/lang/en文件夾下,我們可以看到以下幾個文件:
resources
- lang
- en
-- auth.php
-- pagination.php
-- passwords.php
-- validation.php
其中validation.php是驗證用戶提交表單信息的提示文字,比如
'required' => 'The :attribute field is required.',
該行將會在用戶未填寫某一欄(假設(shè)input的name為test)時提示The test field is required.'。 那么我們要添加多語言提示其實也很簡單,并不是直接改動en文件夾下的對應(yīng)文件,而是在lang文件夾下新建立一個新locale文件夾,比如中文我采用了zh`:
resources
- lang
- en
-- auth.php
-- pagination.php
-- passwords.php
-- validation.php
- zh
-- auth.php
-- pagination.php
-- passwords.php
-- validation.php
注意我們需要把en文件夾下所有文件復制進zh,然后我們就可以修改zh文件夾下的文件了。
需要注意的是,在validation.php中,有一個叫attributes的數(shù)組,我們需要在里面把我們input的name都一一添加進去,否則提示信息中的:attribute會使用默認的input name,所以如果我們?nèi)绻麑⒅暗膔equired信息改為:
'required' => ':attribute不能為空',
那么用戶會看到的錯誤信息為:
而如果我們在attributes數(shù)組中添加以下元素:
'attributes' => [
'test' => '測試',
]
那么我們的錯誤信息則會顯示:
測試不能為空
所以,為了給用戶更好的使用體驗,我們需要盡量多地將提示信息完善。
最后一步,添加完了locale文件之后,我們需要在config/app.php中修改我們的locale:
'locale' => 'zh',
'fallback_locale' => 'en',
這樣默認的locale就會使用我們新建的zh了。
以上這篇Laravel 添加多語言提示信息的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:- laravel實現(xiàn)于語言包的完美切換方法
- Laravel項目中timeAgo字段語言轉(zhuǎn)換的改善方法示例