PHP版本繁簡體,UTF-8和Unicode互轉的函式:GB2312Big5,GB2312UTF-8,Big5UTF-8等
研究VtigerCRM時,試圖把繁體語言外掛轉成簡體版,並去除對iconv的依賴,因為很多php空間不支援;研究過GB2312,Big5,UTF-8之間的轉化方法。後來就扔到了一邊,最近有多個朋友詢問解決方案,於是重新找出來貢獻給大家;
本人對php所知不多,即使偶爾修改些php的網頁也是摸索著查資料來實現,望php行家莫見笑。
這個方案的特點就是使用簡單,只要在需要呼叫轉換函式的頁面加入include_once`language.inc`,就可以方便使用函式了。
關於使用方法就附上我當初轉語言外掛的程式碼:
本人對php所知不多,即使偶爾修改些php的網頁也是摸索著查資料來實現,望php行家莫見笑。
這個方案的特點就是使用簡單,只要在需要呼叫轉換函式的頁面加入include_once`language.inc`,就可以方便使用函式了。
關於使用方法就附上我當初轉語言外掛的程式碼:
<?php
function dirtree($path=“.“)
{
include_once `language.inc`;
$d = dir($path);
while(false !== ($v = $d->read()))
{
if($v == “.“ || $v == “..“)
continue;
$file = $d->path.“/“.$v;
if(is_dir($file))
{
//echo “$v”;
dirtree($file);
}
else
echo $file.“
“;
//rename($file,str_replace(`zh_tw`,`zh_cn`,$file));
//$filename=`zh_cn.lang.php`;
$fd=fopen($file,`r`);
$contents = fread($fd, filesize($file));
$contents=u2b($contents);
$contents=b2g($contents);
//echo $contents;
$contents=str_replace(`日`,`日曆`,$contents);
$contents=g2u($contents);
$contents=str_replace(`Trade chinese language pack created by METO, Inc. http://www.meto.com.tw`,`Simple chinese language pack created by Steed Soft Technology, Inc. http://www.steedsoft.com`,$contents);
fclose($fd);
$fd=fopen(str_replace(`zh_tw/`,`zh_cn/`,str_replace(`zh_tw`,`zh_cn`,$file)),`w`);
fwrite($fd,$contents);
fclose($fd);
//rename($file,str_replace(`zh_tw`,`zh_cn`,$file));
}
$d->close();
//echo ” “;
}
dirtree(“zh_tw“);
?>
function dirtree($path=“.“)
{
include_once `language.inc`;
$d = dir($path);
while(false !== ($v = $d->read()))
{
if($v == “.“ || $v == “..“)
continue;
$file = $d->path.“/“.$v;
if(is_dir($file))
{
//echo “$v”;
dirtree($file);
}
else
echo $file.“
“;
//rename($file,str_replace(`zh_tw`,`zh_cn`,$file));
//$filename=`zh_cn.lang.php`;
$fd=fopen($file,`r`);
$contents = fread($fd, filesize($file));
$contents=u2b($contents);
$contents=b2g($contents);
//echo $contents;
$contents=str_replace(`日`,`日曆`,$contents);
$contents=g2u($contents);
$contents=str_replace(`Trade chinese language pack created by METO, Inc. http://www.meto.com.tw`,`Simple chinese language pack created by Steed Soft Technology, Inc. http://www.steedsoft.com`,$contents);
fclose($fd);
$fd=fopen(str_replace(`zh_tw/`,`zh_cn/`,str_replace(`zh_tw`,`zh_cn`,$file)),`w`);
fwrite($fd,$contents);
fclose($fd);
//rename($file,str_replace(`zh_tw`,`zh_cn`,$file));
}
$d->close();
//echo ” “;
}
dirtree(“zh_tw“);
?>
下載地址
也可以登陸該網頁下載:http://www.layman.5gigs.com/download/(還要些別的好東西等著你)
P.S
該方案的缺點,因為繁體中文和簡體中文存在一定的詞法不一致的情況,因此會發現有些詞無法轉換,我從網上找到了兩個處理該問題的dat檔案,但具體實現我沒有做,以後也許會抽時間研究下並做個更新。
本文轉自RubyPdf 的中文部落格部落格園部落格,原文連結:http://www.cnblogs.com/hardrock/archive/2006/02/11/328741.html,如需轉載請自行聯絡原作http://www.cnblogs.com/hardrock/archive/2006/05/17/402654.html
相關文章
- 繁體簡體互轉 OpenCC-PHP 擴充套件PHP套件
- GBK中文繁簡轉換函式函式
- [擴充套件推薦]簡體轉繁體/繁體轉簡體 OpenCC-PHP 擴充套件套件PHP
- 【轉】utf-8與Unicode的轉化Unicode
- UTF-8 and Unicode FAQ(轉)Unicode
- 寫了一個數字轉成簡 / 繁體漢字的助手函式函式
- Unicode和UTF-8之間的轉換詳解Unicode
- unicode和UTF-8的區別Unicode
- iOS Unicode轉中文(UTF-8)iOSUnicode
- Java Unicode互轉JavaUnicode
- [轉]decode函式和行列互換函式
- WideCharToMultiByte和MultiByteToWideChar函式的用法(ascii轉unicode unicode轉ascii)IDE函式ASCIIUnicode
- C++ string互轉wstring/Unicode互轉ANSI/Unicode互轉UTF8C++Unicode
- PHP輸出控制功能在簡繁體轉換中的應用PHP
- 使用微軟的多語言工具包進行網站簡體與繁體的互轉和得到漢字、拼音、筆畫等相關資訊微軟網站
- unicode,utf-8Unicode
- php 函式簡介PHP函式
- 用ruby實現簡體中文和繁體中文的相互轉化
- Unicode、GBK、UTF-8、ASCII的編碼簡介UnicodeASCII
- SqlServer中將字串轉utf-8的函式、支援中文的UrlEncode函式SQLServer字串函式
- 字元編碼:ASCII,Unicode和UTF-8字元ASCIIUnicode
- Unicode編碼和中文互轉(JAVA實現)UnicodeJava
- unicode vs utf-8Unicode
- unicode、utf-8、ansi的故事Unicode
- 類函式和物件函式 PHP函式物件PHP
- 轉貼 (談談Unicode編碼,簡要解釋UCS、UTF、BMP、BOM等名詞)&(UTF-8編碼規則)Unicode
- 你真的瞭解 Unicode 和 UTF-8 嗎?Unicode
- Unicode 和 UTF-8 是什麼關係?Unicode
- Delphi 中big5 轉 Unicode 函式Unicode函式
- 多位元組與UTF-8、Unicode之間的轉換Unicode
- mysql 時間相關的函式 以及日期和字串互轉MySql函式字串
- 用JAVA轉換簡繁體的基礎知識 (轉)Java
- php轉換ip函式PHP函式
- PHP連結oracle的函式 (轉)PHPOracle函式
- python實現中文字元繁體和簡體中文轉換Python字元
- 字元編碼筆記:ASCII,Unicode和UTF-8字元筆記ASCIIUnicode
- 字元編碼筆記:ASCII,Unicode 和 UTF-8字元筆記ASCIIUnicode
- php呼叫mysql儲存過程和函式的方法(轉)PHPMySql儲存過程函式