<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # 多語言 [上一頁](189.html "上一頁")[下一頁](191.html "下一頁") ThinkPHP內置多語言支持,如果你的應用涉及到國際化的支持,那么可以定義相關的語言包文件。任何字符串形式的輸出,都可以定義語言常量。要啟用多語言功能,需要配置開啟多語言行為(確保你下載的是完整版本,如果不是需要單獨下載多語言檢測行為擴展),在項目的配置目錄下面的行為定義文件tags.php中,添加:`return?array(<br class="calibre5"></br>????//?添加下面一行定義即可<br class="calibre5"></br>????'app_begin'?=>?array('CheckLang')<br class="calibre5"></br>);`表示在app_begin標簽位置執行多語言檢測行為。 要開啟語言包功能,需要開啟`'LANG_SWITCH_ON'?=>?true,???//?開啟語言包功能`其他的配置參數包括:`'LANG_AUTO_DETECT'?=>?true,?//?自動偵測語言?開啟多語言功能后有效<br class="calibre5"></br>'LANG_LIST'????????=>?'zh-cn',?//?允許切換的語言列表?用逗號分隔<br class="calibre5"></br>'VAR_LANGUAGE'?????=>?'l',?//?默認語言切換變量`可以為項目定義不同的語言文件,框架的系統語言包目錄在系統框架的Lang目錄下面,每個語言都對應一個語言包文件,系統默認只有簡體中文語言包文件zh-cn.php ,如果要增加繁體中文zh-tw或者英文en,只要增加相應的文件。 語言包的使用由系統自動判斷當前用戶的瀏覽器支持語言來定位,如果找不到相關的語言包文件,會使用默認的語言。如果瀏覽器支持多種語言,那么取第一種支持語言。 ThinkPHP的多語言支持已經相當完善了,可以滿足應用的多語言需求。這里是指的是模板多語言支持,數據的多語言轉換(翻譯)不在這個范疇之內。ThinkPHP具備語言包定義、自動識別、動態定義語言參數的功能。并且可以自動識別用戶瀏覽器的語言,從而選擇相應的語言包(如果有定義)。例如:`throw_exception('新增用戶失敗!');`我們在語言包里面增加了ADD_USER_ERROR 語言配置變量的話,在程序中的寫法就要改為:`throw_exception(L('ADD_USER_ERROR'));`也就是說,字符串信息要改成L方法和語言定義來表示。 項目語言包文件位于項目的Lang目錄下面,并且按照語言類別分子目錄存放,在執行的時候系統會自動加載,無需手動加載。 具體的語言包文件命名規范如下:項目公共語言包 語言目錄/common.php 項目分組語言包 語言目錄/分組名.php 項目模塊語言包 不存在分組情況:語言目錄/模塊名(小寫).php 存在分組的情況:語言目錄/分組名/模塊名(小寫).php 語言包文件可以按照模塊來定義,每個模塊單獨定義語言包文件,文件名和模塊名稱相同,例如: Lang/zh-cn/user.php 表示給User模塊定義簡體中文語言包文件 Lang/zh-tw/user.php 表示給User模塊定義繁體中文語言包文件 語言子目錄采用瀏覽器的語言命名(全部小寫)定義,例如English (United States) 可以使用en-us作為目錄名。如果項目比較小,整個項目只有一個語言包文件,那可以定義common.php文件,而無需按照模塊分開定義。 分組的模塊語言包定義受TMPL_FILE_DEPR參數配置影響,如果你修改了TMPL_FILE_DEPR參數,例如:`'TMPL_FILE_DEPR'=>'_',`那么,分組的模塊語言包定義方式應該改為: 語言目錄/分組名_模塊名(小寫).php語言文件定義 ThinkPHP語言文件定義采用返回數組方式:`return?array(<br class="calibre5"></br>????'lan_define'=>'歡迎使用ThinkPHP',<br class="calibre5"></br>);`要在程序里面設置語言定義的值,使用下面的方式:`L('define2','語言定義');<br class="calibre5"></br>$value?=?L('define2');`上面的語言包是指項目的語言包,如果在提示信息的時候使用了框架底層的提示,那么還需要定義系統的語言包,系統語言包目錄位于ThinkPHP目錄下面的Lang目錄。 通常多語言的使用是在Action控制器里面,但是模型類的自動驗證功能里面會用到提示信息,這個部分也可以使用多語言的特性。例如: 原來的方式是把提示信息直接寫在模型里面定義`array('title','require','標題必須!',1),`如果使用了多語言功能的話(假設,我們在當前語言包里面定義了' lang_var'=>'標題必須!') 還可以這樣定義模型的自動驗證`array('title','require','{%lang_var}',1),`如果要在模板中輸出語言變量不需要在Action中賦值,可以直接使用模板引擎特殊標簽來直接輸出語言定義的值:`{$Think.lang.lang_var}`可以輸出當前選擇的語言包里面定義的 lang_var 語言定義 [上一頁](189.html "上一頁")[下一頁](191.html "下一頁")
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看