2009-06-12 21:30:17 做啥网 PHP截取字符串截取文字的办法

PHP截取字符串截取文字的办法

2009-06-12 21:30:17 作者:admin 来源: 浏览次数:0 网友评论 0

PHP中经常遇到截取字符串(截取文字)的问题,对于简单的问题我们可以使用函数substr()来处理;但是最近遇到一个问题:需要对文章中的字数进行截取,文章使用的是UTF-8编码形式。问题来了,有些字占3个字节,有些则是两个字节,有的则是一个字节,显然,通过substr()来处理是不行的了——出现的都是一些乱码!

在网上寻找解决办法,后来终于把这个问题搞定了,方法是建立如下函数代码,然后对页面进行处理:

<?
function substr_utf8($string,$start,$length)
{      	 $chars = $string;
	 $i=0;
	 do{
	 if (preg_match ("/[0-9a-zA-Z]/", $chars[$i])){//纯英文
	 	$m++;
	 	}
	else {$n++;	 	}//非英文字节,
	 	$k = $n/3+$m/2;
	 	$l = $n/3+$m;//最终截取长度;$l = $n/3+$m*2?
		$i++;
	} while($k < $length);
	 $str1 = mb_substr($string,$start,$l,'utf-8');//保证不会出现乱码
	 return $str1;
}?>

该方法由aiou提供,在此表示感谢,具体页面看这里

关键词:PHP函数代码
0
顶一下
0
踩一下

[收藏] [打印] [关闭] [返回顶部]

网上赚钱(Make Money Online)

最新图片文章

AD

最新文章