$file\n"); $str = read_file($file); if(cli_str_infun($str)){ save_file($file, $str); } } // 指定内容注入语言版本控制函数 function cli_str_infun(&$str){ $arr = array(); preg_match_all('/(? 0; } // 获取配置语言版本信息 function cli_config_match($file, &$arr, $is_next = false){ if(is_dir($file)){ fordir($file, __FUNCTION__, array(&$arr, $is_next), $is_next); return; } echo("doing_config==>$file\n"); $str = read_file($file); preg_match_all('/(\"|\')([\"]*[\x{4e00}-\x{9fa5}]+[\"]*)\1/iuU', $str, $ret1); preg_match_all('/\[\[([^\"\']*[\x{4e00}-\x{9fa5}]+[^\"\']*)\]\]/iuU', $str, $ret2); $ret = array_merge($ret1[2], $ret2[1]); foreach($ret as $k => $v){ echo("cli_config_match==>$v\n"); $arr[trim($v)] = 1; } } // 获取语言版本信息 function cli_match_old($file, &$arr, $is_next = false){ if(is_dir($file)){ fordir($file, __FUNCTION__, array(&$arr, $is_next), $is_next); return; } if (basename($file) == "language.lua") { echo("doing==>$file\n"); $str = read_file($file); preg_match_all('/[^\[](\"|\')([\"]*[\x{4e00}-\x{9fa5}]+[\"]*)\1/iuU', $str, $ret1); preg_match_all('/\[\[(.*[\x{4e00}-\x{9fa5}]+.*)\]\]/iuU', $str, $ret2); $ret = array_merge($ret1[2], $ret2[1]); foreach($ret as $k => $v){ echo("cli_match==>$v\n"); $arr[trim($v)] = 1; } } } // 获取语言版本信息 function cli_match($file, &$arr, $is_next = false){ if(is_dir($file)){ fordir($file, __FUNCTION__, array(&$arr, $is_next), $is_next); return; } echo("doing==>$file\n"); $str = read_file($file); preg_match_all('/TI18N\((\"|\')(.*[\x{4e00}-\x{9fa5}]+.*)\1\)/iuU', $str, $ret1); preg_match_all('/TI18N\(\[\[(.*[\x{4e00}-\x{9fa5}]+.*)\]\]\)/iuU', $str, $ret2); $ret = array_merge($ret1[2], $ret2[1]); foreach($ret as $k => $v){ echo("cli_match==>$v\n"); $arr[trim($v)] = 1; } } // 导出翻译文件 function cli_lang2($lang){ $all = get_file_array(LANG_DATA."/$lang/".LANG_DATA_ALL); $cli = get_file_array(LANG_DATA."/$lang/".LANG_DATA_CLI); $str = "-- 多语言版本\n\nLang = function(s)"; foreach($cli as $k=>$v){ if(!isset($all[$k])) continue; if($k == $all[$k]) continue; $k = trim(str_replace("'", "\'", $k)); $v = trim(str_replace("'", "\'", $all[$k])); $str .= "\nif s == '$k' then return '{$v}' end"; } $str .= "\nreturn s\nend"; save_file(LANG_DATA."/$lang/".LANG_DATA_CONF_CLI, $str); } function cli_lang($lang){ $all = get_file_array(LANG_DATA."/$lang/".LANG_DATA_ALL); $cli = get_file_array(LANG_DATA."/$lang/".LANG_DATA_CLI); $str = "-- 多语言版本\n\nLang = {"; foreach($cli as $k=>$v){ if(!isset($all[$k])) continue; if($k == $all[$k]) continue; $new_k = trim(str_replace("'", "\'", $k)); $v = trim(str_replace("'", "\'", $all[$k])); $k = $new_k; $str .= "\n['$k']='{$v}',"; } $str .= "\n}"; save_file(LANG_DATA."/$lang/".LANG_DATA_CONF_CLI, $str); }