php实现twTrCn-简繁转化

参照别人的PHP方法,封装了一个PHP简繁体转化的类。
其中包括一个配置文件、一个类文件。
配置文件:主要是简繁体对应的字体,可以手动的添加简繁体库
类文件:主要是两个function,一个提供简体转化为繁体,相应的另外一个就是繁体转化为简体。
这里的配置文件我就不解释了,可以看一下转化类的代码:
require_once "transfer_config.php";//读取简繁体配置文件 class Transfer { const ZH_ASCII_LOW = 224; //中文ASCII的最小值 const ZH_ASCII_HIGHT = 239; //中文ASCII的最大值 public static $utf8_gb2312; //类的变量,存储繁体 public static $utf8_big5; //类的变量,存储简体 public function __construct() { global $UTF8_GB2312; global $UTF8_BIG5; self::$utf8_gb2312 = $UTF8_GB2312; self::$utf8_big5 = $UTF8_BIG5; } public function cnToTw($string) { $traditional = ""; //繁体变量初始化 $length = strlen($string); //提取string字符串的ASCII码长度,注意一个中文字符对应于3位 $count = 0; while ($count < $length) { //获取$count位置上的ASCII值 $ascii = ord($string{$count}); if ($ascii >= self::ZH_ASCII_LOW && $ascii <= self::ZH_ASCII_HIGHT) { if (($temp = strpos(self::$utf8_gb2312, $string{$count} . $string{$count + 1} . $string{$count + 2})) !== false) { $traditional .= self::$utf8_big5{$temp} . self::$utf8_big5{$temp + 1} . self::$utf8_big5{$temp + 2}; $count += 3; continue; } } $traditional .= $string{$count++}; } return $traditional; } public function twToCn($string) { $simplified = ""; $length = strlen($string); $count = 0; while ($count < $length) { //获取$count位置上的ASCII值 $ascii = ord($string{$count}); if ($ascii >= self::ZH_ASCII_LOW && $ascii <= self::ZH_ASCII_HIGHT) { if (($temp = strpos(self::$utf8_big5, $string{$count} . $string{$count + 1} . $string{$count + 2})) !== false) { $simplified .= self::$utf8_gb2312{$temp} . self::$utf8_gb2312{$temp + 1} . self::$utf8_gb2312{$temp + 2}; $count += 3; continue; } } $simplified .= $string{$count++}; } return $simplified; } }
配有附件测试代码,需要的话可以下载使用哦亲!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值