好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Yii2語言國際化的配置教程

Yii2語言國際化的配置教程

熱門標簽:電信外呼系統多少錢一個月 神龍斗士電話機器人 桂陽公司如何做地圖標注 合肥企業外呼系統線路 太原400電話申請流程 代理打電話機器人 宿州正規外呼系統軟件 萍鄉商鋪地圖標注 企業400電話辦理多少費用

前言

最近想將博客做成支持多語言的,還好Yii2支持這個功能,于是查看了下官方的文檔,哎,看了半天不知道干嘛用的,于是各種百度,Google的搜索,最終才明白原來很簡單,只是官方寫的太復雜

下面介紹下具體的使用步驟,具體介紹我就不寫了,官方寫比我清楚,我就寫怎么使用

第一步 創建i18n配置文件

./yii message/config @app/config/i18.php // yii 在項目目錄下 Yii2創建的時候自動生成的

執行完命令之后會在項目根目錄config下創建一個i18n.php文件

為什么要創建這個文件,因為我們為了多語言處理,需要生成一個對應的映射文件,只要生成就好了,稍后的配置程序會自動調用處理

第二步 修改配置規則

打開config/i18n.php,看下生成的配置文件的代碼,如下:

return [
 'color' => null,
 'interactive' => true,
 'help' => null,
 'sourcePath' => '@yii',
 'messagePath' => '@yii/messages',
 'languages' => [],
 'translator' => 'Yii::t',
 'sort' => false,
 'overwrite' => true,
 'removeUnused' => false,
 'markUnused' => true,
 'except' => [
  '.svn',
  '.git',
  '.gitignore',
  '.gitkeep',
  '.hgignore',
  '.hgkeep',
  '/messages',
  '/BaseYii.php',
 ],
 'only' => [
  '*.php',
 ],
 'format' => 'php',
 'db' => 'db',
 'sourceMessageTable' => '{{%source_message}}',
 'messageTable' => '{{%message}}',
 'catalog' => 'messages',
 'ignoreCategories' => [],
 'phpFileHeader' => '',
 'phpDocBlock' => null,
];

修改后的代碼,如下:

return [
 'color' => null,
 'interactive' => true,
 'help' => null,
 'sourcePath' => '@app',
 'messagePath' => '@app/messages',
 'languages' => ['zh-CN', 'ru-RU'],
 'translator' => 'Yii::t',
 'sort' => false,
 'overwrite' => true,
 'removeUnused' => false,
 'markUnused' => true,
 'except' => [
  '.svn',
  '.git',
  '.gitignore',
  '.gitkeep',
  '.hgignore',
  '.hgkeep',
  '/messages',
  '/BaseYii.php',
  'vendor',
 ],
 'only' => [
  '*.php',
 ],
 'format' => 'php',
 'db' => 'db',
 'sourceMessageTable' => '{{%source_message}}',
 'messageTable' => '{{%message}}',
 'catalog' => 'messages',
 'ignoreCategories' => [],
 'phpFileHeader' => '',
 'phpDocBlock' => null,
];

我這里只改了兩個地方

'sourcePath' => '@app', // 將@yii改為@app 只處理我們自己應用中的代碼
'messagePath' => '@app/messages', // 將@yii/messages改為@app/messages 將需要翻譯的字段提取出來要放的目錄
'languages' => ['zh-CN', 'ru-RU'], // 要翻譯成目標的語言,我這里定義了一個"中文"和"俄語"

'except' => [
 '.svn',
 '.git',
 '.gitignore',
 '.gitkeep',
 '.hgignore',
 '.hgkeep',
 '/messages',
 '/BaseYii.php',
 'vendor', // 將vendor目錄下的過濾掉,不然可能太多了
],

第三步 生成翻譯配置文件

執行下面的命令

./yii message/extract @app/config/i18n.php

執行完之后會在messages目錄下(如果沒有messages目錄的話需要手動創建下)得到如下的目錄結構

├── ru-RU
│   └── app.php
└── zh-CN
    └── app.php

提示下再做這個操作之前,需要在自己的項目中有類似Yii:t()的調用,比如我這里在components/HeaderWidget.php這個文件中

Yii::t('app', 'Home')

這里的app的作用是用來進行文件分類的,我這里暫時沒有計劃生成的時候會將所有需要翻譯的字段放在app開頭命名的php文件app.php文件中

如果像下面這樣調用的話

Yii::t('appp', 'Home')

會生成一個appp.php的文件

第四步 翻譯配置文件

看下中文的翻譯文件messages/zh-CN/app.php,我的是下面這個

return [
 'Archive' => '',
 'Autokid' => '',
 'Blog' => '',
 'Ctime' => '',
 'IP地址' => '',
 'UserAgent' => '',
 '主題' => '',
 '內容' => '',
 '姓名' => '',
 '日期' => '',
 '郵箱地址' => '',
 '頁面路徑' => '',
 'Home' => '首頁', // 右邊的鍵值對應 Yii::t('app', 'Home')中的Home,只需要在value中寫入需要的漢字就可以了。
];

第五步 修改目標國際化語言

修改配置文件

'language' => 'zh-CN', // 指定為要翻譯的語言

再打開網頁,就可以看到已經翻譯成了對應需要的語言,當然這樣的配置很不靈活,如果是部署多態機器并通過域名或者其他方式來實現的話,也是可以的,這里的話我建議如下方式

創建自己的Controller,然后將語言配置放在Session中,通過獲取Session中的語言來更換全站的語言。具體見后面分享

提示,網站很多地方提到要加個配置,官方也是

'i18n' => [
 'translations' => [
  'app*' => [
   'class' => 'yii\i18n\PhpMessageSource',
   'basePath' => '@app/messages',
   'sourceLanguage' => 'en-US',
   'fileMap' => [
    'app' => 'app.php',
   ],
  ],
 ],
],

我這邊在配置的時候沒有加,運行也都是正常的,如有遇到問題,可以一起溝通交流下。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

您可能感興趣的文章:
  • YII2 實現多語言配置的方法分享
  • Yii2簡單實現多語言配置的方法
  • Yii2語言國際化自動配置詳解
  • Yii配置文件用法詳解
  • Yii學習總結之安裝配置
  • yii2.0實現pathinfo的形式訪問的配置方法
  • Yii2配置Nginx偽靜態的方法
  • YII中Ueditor富文本編輯器文件和圖片上傳的配置圖文教程
  • Nginx配置PHP的Yii與CakePHP框架的rewrite規則示例
  • yii2 數據庫讀寫分離配置示例
  • Yii框架多語言站點配置方法分析【中文/英文切換站點】

標簽:綏化 太原 崇左 辛集 廊坊 衡陽 白銀 鄂州

巨人網絡通訊聲明:本文標題《Yii2語言國際化的配置教程》,本文關鍵詞  Yii2,語言,國際化,的,配置,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Yii2語言國際化的配置教程》相關的同類信息!
  • 本頁收集關于Yii2語言國際化的配置教程的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 精品乱码一区二区三四区视频| 国产孕妇孕交视频在线观看| 孕妇大肚猛烈承欢H| 中国videos性高清免费| 国产91精品秘?入口17c| 国产小萍萍挤奶喷奶水| 高中生不是处的比例| 男女啪啪吃奶gif动态图| 白丝袜?无遮挡裸体美女视频| 色婷婷精品免费视频| mm1313感美女视频无遮挡| 超碰青草色偷偷男人的天堂xo| SAO货真浪大JI巴CAO死你| 女邻居拉开裙子让我挺进| 十八人口工彩画大全| 国产精品久久久亚洲偷窥女厕 | 国产精品亚洲污污网站入口| h网站在线播放| 糟老头至尊永久免费版下载| 三级片在线| 亚洲人做受???高潮明| 人妻口爆吞精-ThePorn| 日韩福利影视| 韩国黄| 日韩午夜在线高清| 午夜精品久久久久久久99黑人| 亚洲人成在线中文字幕| 丰满美妇岳叫我吸她大乳| 你的就是比我老公的大| 国产精品久久久久精品综合紧男同| 再深点灬好爽灬轻点h视频| 免费va欧美在线观看| 潘金莲一级婬片AAAAA| 97av视频| 私人影院里面可以啪吗| 小鸡鸡| www.av欧美| 哥哥的老婆| 深夜福利无码AV视频一区| 日本电影在线观看免费播放| 久久精品久久久久久久久人|