Laravel 實現添加多語言提示信息

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.',
該行將會在用戶未填寫某一欄(假設input的name為test)時提示The test field is required.'。
那么我們要添加多語言提示其實也很簡單,并不是直接改動en文件夾下的對應文件,而是在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的數組,我們需要在里面把我們input的name都一一添加進去,否則提示信息中的:attribute會使用默認的input name,所以如果我們如果將之前的required信息改為:
'required' => ':attribute不能為空',
那么用戶會看到的錯誤信息為:
test不能為空
而如果我們在attributes數組中添加以下元素:
'attributes' => [ 'test' => '測試', ]
那么我們的錯誤信息則會顯示:
測試不能為空
所以,為了給用戶更好的使用體驗,我們需要盡量多地將提示信息完善。
最后一步,添加完了locale文件之后,我們需要在config/app.php中修改我們的locale:
'locale' => 'zh', 'fallback_locale' => 'en',
這樣默認的locale就會使用我們新建的zh了。
以上這篇Laravel 實現添加多語言提示信息就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:
相關文章
Laravel第三方包報class not found的解決方法
今天小編就為大家分享一篇Laravel第三方包報class not found的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10php+redis實現多臺服務器內網存儲session并讀取示例
這篇文章主要介紹了php+redis實現多臺服務器內網存儲session并讀取示例,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-01-01
最新評論