utf8字符串截取
2005-12-23
作者:Dummy | Zandy 同分类文章
description:
例子echo join('', String::subString_UTF8('中国汉字', 0, 1));
<?php
/**
* Filename : String.php
* Author : Dummy | Zandy
* Email : lianxiwoo@gmail.com | hotmail.com
* Create : 200512
* LastMod : 2005
* Usage :
*/
ini_set('display_errors', 1);
error_reporting(E_ALL ^ E_NOTICE);
class String {
function subString_UTF8($str, $start, $lenth)
{
$len = strlen($str);
$r = array();
$n = 0;
$m = 0;
for($i = 0; $i < $len; $i++) {
$x = substr($str, $i, 1);
$a = base_convert(ord($x), 10, 2);
$a = substr('00000000'.$a, -8);
if ($n < $start){
if (substr($a, 0, 1) == 0) {
}elseif (substr($a, 0, 3) == 110) {
$i += 1;
}elseif (substr($a, 0, 4) == 1110) {
$i += 2;
}
$n++;
}else{
if (substr($a, 0, 1) == 0) {
$r[] = substr($str, $i, 1);
}elseif (substr($a, 0, 3) == 110) {
$r[] = substr($str, $i, 2);
$i += 1;
}elseif (substr($a, 0, 4) == 1110) {
$r[] = substr($str, $i, 3);
$i += 2;
}else{
$r[] = '';
}
if (++$m >= $lenth){
break;
}
}
}
return $r;
} // End subString_UTF8
}// End String
echo '<hr><hr><hr>';
echo join('', String::subString_UTF8('中国汉字'', 0, 1));
?>
相关
PHP永动机
php web打印解决方案
将html中大写标签全部变成小写
PHP开发框架总结
字符串的第几个字母
fastcgi mysql_pconnect 数据库持续链接
MySQL数据的导出和导入工具:mysqldump
PHP中文件格式类
IT业员工的流动很大的一个原因
File_Bittorrent