php自定义函数截取汉字长度
php自定义函数截取汉字长度
发布时间:2016-12-29 来源:查字典编辑
摘要:复制代码代码如下:functionmsubstr($str,$start,$len){$strlen=$start+$len;for($i=...

复制代码 代码如下:

function msubstr($str,$start,$len) {

$strlen=$start+$len;

for($i=0;$i<$strlen;$i++) {

if(ord(substr($str,$i,1))>0xa0) {

$tmpstr.=substr($str,$i,2);

$i++;

} else

$tmpstr.=substr($str,$i,1);

}

return $tmpstr;

}

复制代码 代码如下:

<?PHP

$str="这个字符好长呀,^_^";

$Short_Str=showShort($str,4);//截取前面4个汉字,结果为:这个字符...

Echo "$Short_Str";

Function csubstr($str,$start,$len)

{

$strlen=strlen($str);

$clen=0;

for($i=0;$i<$strlen;$i++,$clen++)

{

if ($clen>=$start+$len)

break;

if(ord(substr($str,$i,1))>0xa0)

{

if ($clen>=$start)

$tmpstr.=substr($str,$i,2);

$i++;

}

else

{

if ($clen>=$start)

$tmpstr.=substr($str,$i,1);

}

}

return $tmpstr;

}

Function showShort($str,$len)

{

$tempstr = csubstr($str,0,$len);

if ($str<>$tempstr)

$tempstr .= "..."; //要以什么结尾,修改这里就可以.

return $tempstr;

}

再来看看唠叨的方法 怎么样,简洁吧?

复制代码 代码如下:

$len = 19;

$text = "怎么将新闻的很长的标题只显示前面一些字,后面用.....来代替?";

echo strlen($text)<=$len ? $text : (substr($text,0,$len).chr(0)."....");

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新php教程学习
热门php教程学习
编程开发子分类