php繁體轉碼,php轉換字符編碼

本文目錄一覽:

php搜索 繁體怎麼轉成簡體

PHP實現—漢字簡體繁體轉換

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

另外需要兩個table檔:

1. 

2. 

程式如下: 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;$istrlen($str);$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;$istrlen($str);$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

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

?

?

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

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

// example: 轉換奇摩首頁

// 這個程式.php3?

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

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

include(“CCharset.php3”);

$file=$QUERY_STRING;

$fcontents = join( ”, file( “$file” ) );

$fcontents=str_replace(“head”,”headbase href=$file”, $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=charsetGB=1″,””, $url);

$url=str_replace(“?func=charsetGB=0″,””, $url);

$url=str_replace(“func=charsetGB=1″,””, $url);

$url=str_replace(“func=charsetGB=0″,””, $url);

//echo $url;

//echo “SET to Charset = $CHAR_GB”;

$t=time();

echo “

script language=javascript

document.location=’$url’

/script

“;

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 = $valbr”;

$url.=””.$key.”=”.urlencode($val);

}

$fcontents = join( ”, file( “$url” ) );

$code=new CCharset;

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

//echo “轉換過的 $CHAR_GB”;

echo $fcontents;

exit;

}

/

在PHP把SQL讀取到的繁體BIG5編碼轉換成簡體顯示出來

echo mb_convert_encoding(“你是我的朋友”, “GB2312”, “big5”);

mb_convert_encoding 函數為php內部多位元組字符串編碼轉換函數,可以在有需要的使用場合(如:解決在GB2312編碼環境下使用Ajax產生的中文字亂碼的問題)方便進行編碼轉換,以解決網頁亂碼的問題,使用非常方便,效率非常高,幾乎支持所有編碼

PHP怎麼實現簡體中文轉換繁體中文

mb_convert_encoding(mbMySubstr($arr[‘c_title’],0,60), ‘big5′,’gbk’);

這是轉換成gbk轉換成big5碼

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/277900.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-19 13:21
下一篇 2024-12-19 13:21

相關推薦

  • 英語年齡用連字符號(Hyphenation for English Age)

    英語年齡通常使用連字符號表示,比如 “five-year-old boy”。本文將從多個方面探討英語年齡的連字符使用問題。 一、英語年齡的表達方式 英語中表…

    編程 2025-04-29
  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • Python字符轉列表指南

    Python是一個極為流行的腳本語言,在數據處理、數據分析、人工智能等領域廣泛應用。在很多場景下需要將字符串轉換為列表,以便於操作和處理,本篇文章將從多個方面對Python字符轉列…

    編程 2025-04-29
  • Python學習筆記:去除字符串最後一個字符的方法

    本文將從多個方面詳細闡述如何通過Python去除字符串最後一個字符,包括使用切片、pop()、刪除、替換等方法來實現。 一、字符串切片 在Python中,可以通過字符串切片的方式來…

    編程 2025-04-29
  • Python計算中文字符個數

    本文將從多個方面對Python計算中文字符個數進行詳細的闡述,包括字符串長度計算、正則表達式統計和模塊使用方法等內容。 一、字符串長度計算 在Python中,計算字符串長度是非常容…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • Python中如何判斷字符為數字

    判斷字符是否為數字是Python編程中常見的需求,本文將從多個方面詳細闡述如何使用Python進行字符判斷。 一、isdigit()函數判斷字符是否為數字 Python中可以使用i…

    編程 2025-04-29
  • Python中逗號算字符嗎

    Python中逗號既可以作為分隔符,也可以作為一個表達式中的運算符。關於逗號作為分隔符是不會被算作字符的事情,這點大家都知道。本文主要就是闡述逗號作為運算符在表達式中是會被算作字符…

    編程 2025-04-28
  • 從16進制轉義到中文字符

    16進制轉義是為了在不同的字符集、不同的編碼下,能夠保證特殊字符被正確的識別和渲染。本文將從多個方面對16進制轉義做詳細的闡述,讓讀者對其有更深入的了解。 一、轉義實現 在Web開…

    編程 2025-04-28
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28

發表回復

登錄後才能評論