文章导航PC6首页软件下载单机游戏安卓资源苹果资源

pc软件新闻网络操作系统办公工具编程服务器软件评测

安卓新闻资讯应用教程刷机教程安卓游戏攻略tv资讯深度阅读综合安卓评测

苹果ios资讯苹果手机越狱备份教程美化教程ios软件教程mac教程

单机游戏角色扮演即时战略动作射击棋牌游戏体育竞技模拟经营其它游戏游戏工具

网游cf活动dnf活动lol周免英雄lol礼包

手游最新动态手游评测手游活动新游预告手游问答

您的位置:首页网页设计PHP实例 → 簡繁体转换的class

簡繁体转换的class

时间:2004/11/7 3:23:00来源:本站整理作者:蓝点我要评论(0)

這是以class包裝好的簡繁體轉換的class,

另外需要兩個table檔:

1. http://www.jerry.com.tw/php/big5.map

2. http://www.jerry.com.tw/php/gb.map

程式如下: CCharset.php3




// 程式員: Magic Jerry

//

// function Big5_Gb($str) => big5轉GB for string

// function Gb_Big5($str) => GB轉Big5 for string

//=====================================================

class CCharset {



var $gb_map="gb.map"; //如果要放到別的路徑,要加上完整路徑

var $big5_map="big5.map"; //例如 ="/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;



}



}

?>



===================================================================

使用範例:


// Designer: Magic Jerry





//====直接轉換文字串 的使用方法========

include("CCharset.php3");

$obj=new CCharset;

$big5="這是一個big5的文字串";

$tgb=$obj->Big5_Gb($big5);

echo $tgb; //===> $tgb為轉換好的gb碼字串

$tbig5=$obj->Gb_Big5($tgb);

echo $tbig5; // 又被轉回來了: big5

//======================================

?>










//如果直接轉換網頁 或是檔案

// 語法 http://your.domain.com.tw/這個程式.php3?http://要轉碼的網頁url或檔案

// example: 轉換奇摩首頁

// http://your.domain.com.tw/這個程式.php3?http://www.kimo.com.tw/index.shtml

// 注意: 以下寫法如遇到該網頁有使用cookie,例如認證user,可能會被踢回,login錯誤..

// 為什麼? 想想看吧... @_@

include("CCharset.php3");

$file=$QUERY_STRING;

$fcontents = join( '', file( "$file" ) );

$fcontents=str_replace("","", $fcontents);

$code=new CCharset;

$gb=$code->Big5_Gb($fcontents);

echo $gb;

?>







範例:






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;

$fcontents=$code->Big5_Gb($fcontents);

//echo "轉換過的 $CHAR_GB";

echo $fcontents;

exit;



}

//} else setcookie("CHAR_GB",0,time()+ 31536000);

echo "

  



";



echo

"";



echo "";

include("hows.php3");

echo "";

echo "";

echo "";

echo "";

echo "";

echo "";



echo "";

echo "
";

echo "";



echo "
";

echo "
";

echo "";

echo "";

echo "";

echo "
";

echo "
echo "onmouseout="imgOff('img4')" ";

echo "onmouseover="imgOn('img4')" ";

echo ">";

echo "";

echo "
";

echo "
";

include("hows_2.php3");

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 "MySQL
$fnt>";

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 "";



?> 

相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 没有查询到任何记录。

最新文章 我的php文件怎么打开_php运算符怎么写 php 如何生成静态页面的函数PHP生成图片缩略图PHP session常见问题集锦及解决办法PHP实现同步远程Mysql

人气排行 DEDE在文章列表文章没有缩略图的不显示图片php+mysq修改用户密码我的php文件怎么打开_如何打开php文件的办法FCKeditor的配置和使用方法使用dedecms建站教程PHP+Ajax实现分页技术图片存储与浏览一例Linux+Apache+PHP+MySQLPHP生成图片缩略图