一般来说,要截取的变量来自Mysql,首先要保证那个字段长度要足够长,一般为char(200),可以保持100个汉字,包括标点.
本程序实现的功能:截取指定长度汉字而不会出现以"?>"结尾,超出部分以"..."代替
| <?PHP $str="这个字符比较长SO LONG"; $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; return $tempstr; |
1.将以上代码另存为dovia.php
2.页面引入:<?php include("dovia.php"); ?>
2.套用函数输出目标:<?php $str=$row_rs['N_Title'];$Short_Str=showShort($str,12);echo "$Short_Str";?>