很多网站都会对过长的内容只显示基本的摘要,通常的做法是截取内容的一部份进行显示。
但是在ANSI编码下,一个汉字是占两个字节,utf-8编码下,一个字符是占3个字节的,换句话说,页面上显示的摘要有可能只是一个字 的一半或者1/3,用一个小小的函数就可以解决这个问题。
function resume($str,$length)
{
$str_new=iconv_substr($str,$start,$length,"utf-8");
if($start==0)
{
if(strlen(utf8_decode($str))>($length+$start))
{
$str_new.=" ......";
}
}
return $str_new;
}
$str="大赛地方速度放松idf hello hello 地方所速度放";
$sub=resume($str,150);
echo $sub;
但是在ANSI编码下,一个汉字是占两个字节,utf-8编码下,一个字符是占3个字节的,换句话说,页面上显示的摘要有可能只是一个字 的一半或者1/3,用一个小小的函数就可以解决这个问题。
function resume($str,$length)
{
$str_new=iconv_substr($str,$start,$length,"utf-8");
if($start==0)
{
if(strlen(utf8_decode($str))>($length+$start))
{
$str_new.=" ......";
}
}
return $str_new;
}
$str="大赛地方速度放松idf hello hello 地方所速度放";
$sub=resume($str,150);
echo $sub;