[转载]ecmall语言包程序 (2012-08-18 11:20:59)转载▼标签: 转载 收藏了原文地址:ecmall语言包程序作者:我思故我在执行顺序登陆后台后 最先执行的文件是 default.app.php 这个文件继承 后台控制文件 backend.base.php 这个文件 在其初始化文件 中调用语言包文件 Lang::load(lang_file('admin/common')); Lang::load(lang_file('admin/' . APP)); 这样就执行到上面的文件 其中 lang_file() 获得文件的路径 而 load()函数载入语言文件 而在 load 函数内 ecmall load 函数分析如下 function load($lang_file) { static $loaded = array(); $old_lang = $new_lang = array(); $file_md5 = md5($lang_file); if (!isset($loaded[$file_md5])) { $new_lang = Lang::fetch($lang_file); $loaded[$file_md5] = $lang_file; } else { return; } $old_lang =& $GLOBALS['__ECLANG__']; 定义了全局变量 的引用 if (is_array($old_lang)) { $new_lang = array_merge($old_lang, $new_lang); } $GLOBALS['__ECLANG__'] = $new_lang; //往全局变量累计添加 }