www.gusucode.com > weenCompany闻名企业网站系统 4.0.0 繁体中英文 UTF8源码程序 > admin/exportlanguage.php
<?php // +---------------------------------------------+ // | Copyright 2003 - 2005 weenCompany | // | http://www.weentech.com | // | This file may not be redistributed. | // +---------------------------------------------+ define('IN_ADMIN', true); define('IN_WEENCOMPANY', true); $rootpath = "./../"; include($rootpath . 'includes/core.php'); $language = $_POST['language']; $charset = 'UTF-8'; $version = $_POST['version']; $author = $_POST['author']; $includedefault = $_POST['includedefault']; $getversion = $DB->query_first("SELECT value FROM " . TABLE_PREFIX . "mainsettings WHERE title = 'version'"); $sdversion = $getversion['value']; $comments = "// weenCompany $sdversion 前臺語言 - $language \r\n"; if(strlen($author)) $comments .= "// 由 $author 導出.\r\n\r\n"; else $comments .= "\r\n"; // write the start of the file $languagefile = "<"."?php\r\n\r\n$comments\$charset = '$charset';\r\n\$version = '$version';"; // loop through all the modules and write out their language $modules = $DB->query("SELECT moduleid, name FROM " . TABLE_PREFIX . "modules ORDER BY moduleid"); while($module = $DB->fetch_array($modules)) { $phrases = $DB->query("SELECT moduleid, varname, defaultphrase, customphrase FROM " . TABLE_PREFIX . "phrases WHERE moduleid = '" . $module['moduleid'] . "'"); if( ($rows = $DB->get_num_rows($phrases)) > 0) { // moduleid 1 is used for weenCompany phrases if($module['moduleid'] == 1) $module['name'] = '系統程序'; else $module['name'] = 'Module: ' . $module['name']; // open array $languagefile .= "\r\n\r\n// " . $module['name'] . "(" . $module['moduleid'] . ") \r\n\$sdphrases[" . $module['moduleid'] . "] = array \r\n( \r\n"; while($phrase = $DB->fetch_array($phrases)) { // write custom phrase if not empty if(strlen($phrase['customphrase'])) { $languagefile .= " '" . $phrase['varname'] . "'\t\t=>'" . str_replace("'", "\'", $phrase['customphrase']) . "',\r\n"; } else if($includedefault == 1) { $languagefile .= " '" . $phrase['varname'] . "'\t\t=>'" . str_replace("'", "\'", $phrase['defaultphrase']) . "',\r\n"; } } // get rid of the last comma before closing the array $languagefile = substr($languagefile, 0, -3) . "\r\n"; // close array $languagefile .= ");"; } // end if the module has has phrase rows } // end of while modules // write the end of the file $languagefile .= "\r\n\r\n?".">"; // path to custom language file if($_SESSION['lang'] == 'en') { $filepath = "languages/custom_en_lang.php"; } else { $filepath = "languages/custom_cn_lang.php"; } // chmod file if(!is_writable($filepath)) @chmod($filepath, 0776); if(is_writable($filepath)) { // open the file if(!$handle = fopen($filepath, "w")) { echo "無法打開文件: $filepath"; exit; } // write language file if(fwrite($handle, $languagefile) === FALSE) { echo "無法寫入文件: $filepath"; exit; } // close file fclose($handle); // get file information $filelength = filesize($filepath); $filename = basename($filepath); // begin writing headers header("Pragma: public"); header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Cache-Control: public"); header("Content-Description: File Transfer"); header("Content-type: text/plain"); // force the download $header="Content-Disposition: attachment; filename=".$filename.";"; header($header ); header("Content-Transfer-Encoding: binary"); header("Content-Length: ".$filelength); @readfile($filepath); } else { echo "文件 <b>$filepath</b> 不存在或不可寫!"; } ?>