Cakephp中如何實現i18n?

2021-09-08 02:16:23 字數 968 閱讀 8003

好像網上一直沒有比較詳細的中文資料來講述如何使用cakephp來實現i18n。正好昨天被逼無奈的將**中的提示中文化了一把,略有心得,簡而志之。

中文化cakephp有如下幾步:

在需要進行中文化的地方使用__()函式,如下所示:

__('this is the string i need to translate', true);
將第2個引數置為ture,這樣如果有相對應的翻譯詞條的話那麼翻譯過的詞條將輸出,否則會輸出未翻譯的詞條。

如果你的**中存在__()函式的話,你就可以執行i18n task來進行**掃瞄了。

i18n task的作用是掃瞄原始碼中所有__()函式,為__()中的string建立翻譯索引並將這些索引儲存在.pot檔案中。

那麼如何執行i18n task呢?

如果是windows平台,請確保環境變數的path中包含php的bin路徑,並確保你cake目錄下的cake\console也存在於環境變數的path中

執行命令 cake i18n,這時候應該會出現如下所示的提示,選擇e既可

---------------------------------------

i18n shell

---------------------------------------

[e]xtract pot file from sources

[i]nitialize i18n database table

[h]elp

[q]uit

what would you like to do? (e/i/h/q)

>

configure::write('config.language', 'chs');
好了,這樣就完成簡單的專案中文化了。

其中很多細節由於篇幅原因就不做完整介紹了。有疑問的話請參考cakephp的幫助文件。

復旦高等代數 I(18級)每週一題

問題2018a01 計算下列 n 1 階行列式的值 a begin 0 1 1 cdots 1 1 a 1 a 2 cdots a n 2 a 1 2 a 2 2 cdots a n 2 vdots vdots vdots vdots 1 n a 1 n a 2 n cdots a n n end....

Vue Cli 在工具類裡面使用國際化i18n

import db from utils localstorage import vue from vue 國際化外掛程式 import vuei18n from vue i18n element 元件內部預設使用中文,可以進行多語言設定 element ui en lang import elem...

cakephp中實現csv檔案匯出

cakephp實現csv匯出的方法並不複雜,可以通過引入乙個csvhelper的方法來實現,cakephp版本1.x或2.x都支援,但要注意不同版本的命名規則。class csvhelper extends function clear function addfield value functio...