function msubstr($str,$start,$len) { $strlen=$start+$len; for($i=0;$i0xa0) { $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中汉字截取
最新推荐文章于 2021-03-19 15:43:22 发布