国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

Thinkphp搭建包括JS多語言的多語言項目實現方法

2024-05-04 23:27:59
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了Thinkphp搭建包括JS多語言的多語言項目實現方法,可實現通過針對js語言包的調用達到構建多語言站點的效果,是非常實用的技巧,需要的朋友可以參考下
 
 

本文實例講述了Thinkphp搭建包括JS多語言的多語言項目實現方法。分享給大家供大家參考。具體實現方法如下:

一、問題:

項目需要開發英文版,于是需要搭建多語言項目.

項目使用Thinkphp框架,隱約記得Thinkphp有多語言設置,翻看了幫助手冊,果然有,這就邊實驗邊開始:

二、實現方法:

Thinkphp采用app_begain來檢測和切換語言包,語言包和項目相關,構架等都比較簡單,具體的這里:http://www.thinkphp.cn/info/188.html

搭建好了,就可以使用URL."?l=en-us"來動態切換和調試,很不錯的.

這邊發現js內的多語言不好處理,總不能全部assign過去,反正多語言也不會總是配置,干脆自動生成對應的多語言js文件,然后頁面根據LANG_SET來動態請求對應的多語言文件,在基礎Action類的_initialize()方法內調用下面的生成函數:

復制代碼代碼如下:
public function _generateJsLanguageFile(){  
        if(C("LANG_SWITCH_ON")){  
            $jsLangFilePath = "./Public/v2/js/lang";  
            $langList = L();  
            $jsLangFileName = $jsLangFilePath."/".LANG_SET.".js";  
            //@unlink($jsLangFileName);//測試,不永久緩存語言包  
            //已存在語言包  
            if(is_file($jsLangFileName)){  
                return;  
            }  
            $str = "var /$LANG={";
            $total = count($langList);
            $k = 1;
            foreach ($langList as $key => $value) {
                $str .=$key.":'".$value."'";
                if($k < $total){
                    $str .=",";
                }
                // $str .="/r/n";
                $k++;
            }
            if(!emptyempty($str)){
                $str .= "}";
                $file_handel = fopen($jsLangFileName, "w+");//打開文件,重寫模式
                fwrite($file_handel, $str);
                fclose($file_handel);
            }
        }
}

這樣,每次訪問前都會生成當前的語言包,然后在Tpl內調用.

 

這樣,每次都會自動載入,這個js是永久緩存的,如果有語言包的更改,只需要修改Thinkphp的語言包,然后刪除舊的js語言包,讓他自動重新生成.

js內就可以這么使用:top10_title = $LANG._NEW_LANGUAGE;這樣整個項目就等于是雙語的,并且是一處配置即可.

希望本文所述對大家的ThinkPHP框架程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 正蓝旗| 瑞昌市| 呼图壁县| 荆州市| 鸡西市| 启东市| 临汾市| 靖宇县| 郧西县| 屯昌县| 德惠市| 酒泉市| 永靖县| 洛南县| 阳泉市| 文成县| 如东县| 寿阳县| 太白县| 澄迈县| 金乡县| 宝应县| 丁青县| 福建省| 鱼台县| 留坝县| 赣州市| 清原| 娄烦县| 高唐县| 拜泉县| 嘉兴市| 依安县| 桐庐县| 邵阳县| 柳州市| 宜黄县| 巴彦淖尔市| 衡阳市| 镇安县| 泾阳县|