文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | 免费看大片 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院 数码学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络学院图形处理PHP中GBK和UTF8编码处理
精品推荐
特别推荐
·Ghost 使用详解
·新手必看 Windows常用的五个快捷按钮
·WindowsVista安装后越来越慢的四大原因
热点TOP10
·辨别真伪 几个著名的Windows“伪”技巧
·Ghost 使用详解
·Windows Live Messenger 8.5测试全面结束
·PHP中GBK和UTF8编码处理
·CorelDRAW绘制简笔卡通造型:憨厚熊
·封杀Windows系统漏洞 堵住黑客入侵途径
·表现层框架之争 JSF与Struts框架的异同
·让Word2003代替金山词霸帮你翻译英文
·哇嘎排第一:软件下载周排行榜TOP50巡礼
·重新审视Windows xp 20%的“保留带宽”

PHP中GBK和UTF8编码处理

日期:2008年1月15日 作者: 查看:[大字体 中字体 小字体]


一、编码范围
1. GBK (GB2312/GB18030)
\x00-\xff GBK双字节编码范围
\x20-\x7f ASCII
\xa1-\xff 中文
\x80-\xff 中文

2. UTF-8 (Unicode)
\u4e00-\u9fa5 (中文)
\x3130-\x318F (韩文
\xAC00-\xD7A3 (韩文)
\u0800-\u4e00 (日文)
ps: 韩文是大于[\u9fa5]的字符
正则例子:

PLAIN TEXT
PHP:
preg_replace("/([\x80-\xff])/","",$str);
preg_replace("/([u4e00-u9fa5])/","",$str);

二、代码例子

PLAIN TEXT
PHP:
//判断内容里有没有中文-GBK (PHP)
function check_is_chinese($s){
return preg_match('/[\x80-\xff]./', $s);
}
 
//获取字符串长度-GBK (PHP)
function gb_strlen($str){
$count = 0;
for($i=0; $i<strlen($str); $i++){
$s = substr($str, $i, 1);
if (preg_match("/[\x80-\xff]/", $s)) ++$i;
++$count;
}
return $count;
}
 
//截取字符串字串-GBK (PHP)
function gb_substr($str, $len){
$count = 0;
for($i=0; $i<strlen($str); $i++){
if($count == $len) break;
if(preg_match("/[\x80-\xff]/", substr($str, $i, 1))) ++$i;
++$count;
}
return substr($str, 0, $i);
}
 
//统计字符串长度-UTF8 (PHP)
function utf8_strlen($str) {
$count = 0;
for($i = 0; $i <strlen($str); $i++){
$value = ord($str[$i]);
if($value> 127) {
$count++;
if($value>= 192 && $value <= 223) $i++;
elseif($value>= 224 && $value <= 239) $i = $i + 2; Webjx.Com
elseif($value>= 240 && $value <= 247) $i = $i + 3;
else die('Not a UTF-8 compatible string');
}
$count++;
}
return $count;
}
 
 
//截取字符串-UTF8(PHP)
function utf8_substr($str,$position,$length){
$start_position = strlen($str);
$start_byte = 0;
$end_position = strlen($str);
$count = 0;
for($i = 0; $i <strlen($str); $i++){
if($count>= $position && $start_position> $i){
$start_position = $i;
$start_byte = $count;
}
if(($count-$start_byte)>=$length) {
$end_position = $i;
break;
}
$value = ord($str[$i]);
if($value> 127){
$count++;
if($value>= 192 && $value <= 223) $i++;
elseif($value>= 224 && $value <= 239) $i = $i + 2;
elseif($value>= 240 && $value <= 247) $i = $i + 3;
else die('Not a UTF-8 compatible string');
}
$count++;
 
}
return(substr($str,$start_position,$end_position-$start_position));
}
 
 
//字符串长度统计-UTF8 [中文3个字节,俄文、韩文占2个字节,字母占1个字节] (Ruby)

[1] [2] 下一页 




上一篇:CSS网页布局中ID与class的理解

下一篇:JavaScript入门学习书籍的阶段选择

相关文章:
·轻松做画家!用Photoshop把照片处理成逼真的素描画
·建立自由的会计日期的报表--1.4.让报表处理期初和期末之间的数据
·不再怕电脑病毒 电脑中毒后的6招处理方法
·生不逢时的祭品 谈英特尔图拉丁处理器
·照片处理 Photoshop强光光感效果处理
·Photoshop将肖像照片处理为超酷个性海报
·IE主页被修改的处理方法
·菜鸟学电脑 轻松学习Windows系统中的批处理
·傻瓜型照片处理软件 让照片更出彩
·无线网络连接故障的处理方法
相关软件:
·Turbo Photo(数码照片处理管理)V5.9
·简明批处理教程
·编码的奥秘
·易达第二代身份证照片处理系统(lab色彩版) V1.4
·特殊问题处理与应变能力
·图形图像处理CorelDRAW10_11试题解答
·photoshop数码照片处理与特效制作 iso 全程可视
·淘金宝即时交易及事物处理软件V2.0
·photoshop数码照片处理与特效制作
·宝石图片处理工具 V2006+

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.vipcn.net
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.vipcn.net All Rights Reserved. 鄂ICP备05000083号Powered by:viphot