Home  >  Article  >  Backend Development  >  classified post class converted from Simplified to Traditional Chinese

classified post class converted from Simplified to Traditional Chinese

WBOY
WBOYOriginal
2016-07-29 08:34:371997browse

This is a class packaged in Simplified and Traditional Chinese.
Another two table files are needed:
1. http://www.jerry.com.tw/php/big5.map
2. http://www. jerry.com.tw/php/gb.map
The program is as follows: CCharset.php3
// Programmer: Magic Jerry
//
// function Big5_Gb($str) => big5 to GB for string
// function Gb_Big5($str) => GB to Big5 for string
//========================== ============================
class CCharset {
var $gb_map="gb.map"; //If you want to put it elsewhere To the path, add the complete path
var $big5_map="big5.map"; //For example="/home/table/gb.map
var $dep_char = 127;
//-------- -------------------------------------------------- -------
function cbig5_gb($str,$fd) {
$c=ord(substr($str,0,1));
$x=ord(substr($str,1,1) );
$address=(($c-160)*510)+($x-1)*2;
fseek($fd, $address);
$hi=fgetc($fd);
$lo= fgetc($fd);
return "$hi$lo";
}
function cgb_big5($str,$fd) {
$c=ord(substr($str,0,1));
$x=ord (substr($str,1,1));
$address=(($c-160)*510)+($x-1)*2;
fseek($fd, $address);
$hi= fgetc($fd);
$lo=fgetc($fd);
return "$hi$lo";
}
//-------------------------- ------------------------------------------------
function Big5_Gb($ str) {
$fd = fopen ($this->gb_map, "r");
$str=str_replace("charset=big5","charset=gb2312", $str);
$outstr="";
for($i=0;$i$ch=ord(substr($str,$i,1));
if($ch > $this-> ;dep_char) {
$outstr.=$this->cbig5_gb(substr($str,$i,2),$fd);
$i++;
} else {
$outstr.=substr($str,$ i,1);
}
}
fclose ($fd);
return $outstr;
}
//------------------------ ----------------------------------------
function Gb_Big5($str) {
$fd = fopen ($this->big5_map, "r");
$str=str_replace("charset=gb2312","charset=big5", $str);
$outstr="";
for($ i=0;$i$ch=ord(substr($str,$i,1));
if($ch > $this->dep_char) {
$outstr.=$this->cgb_big5(substr($str,$i,2),$fd);
$i++;
} else {
$outstr.=substr($str,$i,1) ;
}
}
fclose ($fd);
return $outstr;
}
}
?>
======================== ===========================================
Usage example:
< ?
// Designer: Magic Jerry
//====How to directly convert text string========
include("CCharset.php3");
$obj=new CCharset;
$big5 "This is a big5 text string";
$tgb=$obj->Big5_Gb($big5);
echo $tgb; //===> $tgb is the converted gb code string
$ tbig5=$obj->Gb_Big5($tgb);
echo $tbig5; // transferred back: big5
//==================== ==================
?>
//If you convert web pages or files directly
// Syntax http://your.domain.com. tw/This program.php3?http://Web page URL or file to be transcoded
// example: Convert QIMO homepage
// http://your.domain.com.tw/This program.php3?http:/ /www.kimo.com.tw/index.shtml
// Note: If the following writing method is encountered and the webpage uses cookies, such as authenticating the user, it may be kicked back and cause a login error..
// Why? Think about it Well... @_@
include("CCharset.php3");
$file=$QUERY_STRING;
$fcontents = join( '', file( "$file" ) );
$fc href=$file> ", $fcontents);
$code=new CCharset;
$gb=$code->Big5_Gb($fcontents);
echo $gb;
?>
Example:
if($func= ="charset") {
setcookie("CHAR_GB",$GB,time()+ 31536000);
$t=time();
$url="http://".$HTTP_HOST.$PHP_SELF."? ".$QUERY_STRING;
$url=str_replace("?func=charset&GB=1","", $url);
$url=str_replace("?func=charset&GB=0","", $url);
$url=str_replace("&func=charset&GB=1","", $url);
$url=str_replace("&func=charset&GB=0","", $url);
//echo $url;
/ /echo "SET to Charset = $CHAR_GB";
$t=time();
echo "

";
exit ;
}
//phpinfo();
if($CHAR_GB==1 && !$istran ) {
include("CCharset.php3");
if(strlen($QUERY_STRING)) $url="http:// /".$HTTP_HOST.$PHP_SELF."?".$QUERY_STRING."&istran=1";
else $url="http://".$HTTP_HOST.$PHP_SELF."?istran=1";
while ( list ($key, $val) = each ($HTTP_COOKIE_VARS)) {
//echo "$key => $val
";
$url.="&".$key."=".urlencode ($val);
}
$fcontents = join( '', file( "$url" ) );
$code=new CCharset;
$fc
//echo "轉換過的 $CHAR_GB";
echo $fcontents;
exit;
}
//} else setcookie("CHAR_GB",0,time()+ 31536000);
echo "
";
include("hows.php3");
echo "

";
echo "";
echo "";
echo "";
echo "
";
echo "";
echo "
";
include("hows_2.php3");
echo "
";
echo "";
echo "";
echo "";
$tb=" width=20% height=18 align=left ";
$fnt="&sz=18&cr=231&cg=255&cb=123&br=102&bg=153&bb=153&sh=1";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "
";
echo "";
echo "";
echo "
";
echo "
";
echo "";
echo "";
echo "
";
echo "
";
echo "";
echo "";
echo "
";
echo "
";
echo "";
echo "";
echo "
";
echo "
";
if(strlen($QUERY_STRING)) $aurl="http://".$HTTP_HOST.$PHP_SELF."?".$QUERY_STRING;
else $aurl="http://".$HTTP_HOST.$PHP_SELF;
$aurl=str_replace("?CHAR_GB=1","", $aurl);
$aurl=str_replace("?CHAR_GB=0","", $aurl);
$aurl=str_replace("&CHAR_GB=1","", $aurl);
$aurl=str_replace("&CHAR_GB=0","", $aurl);
if(isset($CHAR_GB) && $CHAR_GB==1) {
if(strlen($QUERY_STRING))
echo "";
else echo "
";
echo "";
echo "
";
} else {
if(strlen($QUERY_STRING))
echo "";
else echo "
";
echo "";
echo "
";
}
echo "
";
echo "";
echo "";
echo "
";;
echo "
";
echo "";
echo "";
echo "
";
echo "
";
echo "";
echo "";
echo "
";
echo "
";
echo "";
echo "";
echo "
";
echo "
";
echo "注意:切換鈕請勿連續按";
echo "
";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
?> 

以上就介绍了classified post 簡繁体转换的class,包括了classified post方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn