PHP版本繁简体,UTF-8和Unicode互转的函数:GB2312Big5,GB2312UTF-8,Big5UTF-8等

研究VtigerCRM时,试图把繁体语言插件转成简体版,并去除对iconv的依赖,因为很多php空间不支持;研究过GB2312,Big5,UTF-8之间的转化方法。后来就扔到了一边,最近有多个朋友询问解决方案,于是重新找出来贡献给大家;
本人对php所知不多,即使偶尔修改些php的网页也是摸索着查资料来实现,望php行家莫见笑。
这个方案的特点就是使用简单,只要在需要调用转换函数的页面加入include_once'language.inc',就可以方便使用函数了。
关于使用方法就附上我当初转语言插件的代码:
None.gif <? php
None.gif    
function  dirtree( $path = " . "
None.gif    {
None.gif        
include_once   ' language.inc ' ;
None.gif        
$d   =   dir ( $path ); 
None.gif        
while ( false   !==  ( $v   =   $d -> read()))
None.gif        { 
None.gif            
if ( $v   ==   " . "   ||   $v   ==   " .. "
None.gif                
continue
None.gif            
$file   =   $d -> path . " / " . $v
None.gif            
if ( is_dir ( $file )) 
None.gif            { 
None.gif                
// echo "$v"; 
None.gif
                dirtree( $file ); 
None.gif            } 
None.gif            
else  
None.gif                
echo   $file . " \n " ;
None.gif                
// rename($file,str_replace('zh_tw','zh_cn',$file));
None.gif                //$filename='zh_cn.lang.php';                

None.gif
                 $fd = fopen ( $file , ' r ' );                
None.gif                
$contents   =   fread ( $fd ,   filesize ( $file ));                
None.gif                
$contents = u2b( $contents );
None.gif                
$contents = b2g( $contents );
None.gif                
// echo $contents;
None.gif
                 $contents = str_replace ( ' 日 ' , ' 日历 ' , $contents );
None.gif                
$contents = g2u( $contents );
None.gif                
$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 );
None.gif
None.gif                
fclose ( $fd );
None.gif                
$fd = fopen ( str_replace ( ' zh_tw/ ' , ' zh_cn/ ' , str_replace ( ' zh_tw ' , ' zh_cn ' , $file )) , ' w ' );
None.gif                
fwrite ( $fd , $contents );
None.gif                
fclose ( $fd );
None.gif                
// rename($file,str_replace('zh_tw','zh_cn',$file));                
None.gif
        }
None.gif         
$d -> close(); 
None.gif         
// echo " "; 
None.gif
     } 
None.gif     dirtree(
" zh_tw " ); 
None.gif 
?>

 

下载地址
也可以登陆该网页下载:http://www.layman.5gigs.com/download/(还要些别的好东西等着你)

P.S
该方案的缺点,因为繁体中文和简体中文存在一定的词法不一致的情况,因此会发现有些词无法转换,我从网上找到了两个处理该问题的dat文件,但具体实现我没有做,以后也许会抽时间研究下并做个更新。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值