[转]PHP中截取汉字的两种方法
原来有人提出了一个方法:$len = 19;
$text = "怎么将新闻的很长的标题只显示前面一些字,后面用.....来代替?";
echo strlen($text)<=$len ? $text : (substr($text,0,$len).chr(0)."....");
今天在 SaBlog 的程序里发现了另一种方法:
function csubstr ($text, $limit) {
$s = '';
for($i=0;$i<$limit-3;$i++) {
$s .= ord($text[$i])>127 ? $text[$i].$text[++$i] : $text[$i];
}
return $s;
}
该函数仅适用于 gb2312 编码,如果是UTF-8 的话需要把第4行改为
$s .= ord($text[$i])>127 ? $text[$i].$text[++$i].$text[++$i] : $text[$i];
令人惊讶的是 UTF-8 中的汉字竟然是 3 个字节。 请写明出处:http://www.yinwei.org 今天闲着无聊,骗帖数。
PS: 网址写错了哦。 一着急就少打一字母
呵…… oh yeah
baby
PHP真TMD难学
坚持中 学PHP前是不是先学学C语言
这样更轻松一些? 下面是引用vbvs于2005-07-17 13:42发表的:
学PHP前是不是先学学C语言
这样更轻松一些?
没有必要
但如果有C的基础学什么语言都会顺手些
多写代码……
页:
[1]