1. 程式人生 > >ecshop 中$long是從哪來的

ecshop 中$long是從哪來的

在呼叫ecshop的模板檔案時,發現好多列表的標題的資料都是資料獲取的,而不是固定寫死的,但是找了一圈,也沒在後臺傳值中傳遞$lang這個變數,還有在一些檔案中,也經常見到$_LANG來接收資料,那麼它到底是從哪來的呢?

原來這個是系統原本定義好的,檔案路徑在:language/zh_cn/下面放置,裡面還有admin、等資料夾,你根據你呼叫檔案時前後臺及其他位置來確定,你檔案呼叫的哪個php檔案,就找同樣的php檔案

ecshop預設的語言包為中文簡體即zh_cn目錄.
語言包的載入過程都是通過ecshop的init.php中的require(ROOT_PATH . 'languages/' . $_CFG['lang'] . '/common.php')處理和控制程式碼來載入的.

這個$_CFG['lang'] 的值是儲存在資料表shop_config的。搜尋 code=lang 的記錄,對應的值就是該語言包名稱。預設是zh_cn。
所有語言包中的陣列名稱是$_LANG.
我們可以看到在init.php中,通過smarty來初始化 $smarty->assign('lang', $_LANG);

  當ecshop語言包得到初始化之後,我們就可以在模板中通過{$lang.edit}方式來訪問語言包中各個名稱了。

      ecshop的後臺,也有講究.語言包載入.他的控制檔案在admin/includes/init.php裡面.