PHP限制新聞?lì)}目的顯示字?jǐn)?shù),字?jǐn)?shù)過多顯示省略號(hào)方法1:
_________________________________________________________________
function substrgb($in,$num){
$pos=0;
$out="";
while($c=substr($in,$pos,1)){
if($c=="\n") break;
if(ord($c)>128){
$out.=$c;
$pos++;
$c=substr($in,$pos,1);
$out.=$c;
}else{
$out.=$c;
}
$pos++;
if($pos>=$num) break;
}
if($out!=$in) $out = $out . "...";
return $out;
PHP限制新聞?lì)}目的顯示字?jǐn)?shù),字?jǐn)?shù)過多顯示省略號(hào)方法2:
_________________________________________________________________
<?php
function cutstr($str,$cutleng)
{
$str = $str; //要截取的字符串
$cutleng = $cutleng; //要截取的長度
$strleng = strlen($str); //字符串長度
if($cutleng>$strleng)return $str;//字符串長度小于規(guī)定字?jǐn)?shù)時(shí),返回字符串自己
$notchinanum = 0; //初始不是漢字的字符數(shù)
for($i=0;$i<$cutleng;$i++)
{
if(ord(substr($str,$i,1))<=128)
{
$notchinanum++;
}
}
if(($cutleng%2==1)&&($notchinanum%2==0))//假如要截取奇數(shù)個(gè)字符,所要截取長度范圍內(nèi)的字符必須含奇數(shù)個(gè)非漢字,否則截取的長度加一
{
$cutleng++;
}
if(($cutleng%2==0)&&($notchinanum%2==1))//假如要截取偶數(shù)個(gè)字符,所要截取長度范圍內(nèi)的字符必須含偶數(shù)個(gè)非漢字,否則截取的長度加一
{
$cutleng++;
}
return substr($str,0,$cutleng);
}
?>
在需要的時(shí)候,調(diào)用這個(gè)函數(shù)--- cutstr 例如:
<?php echo cutstr( $row_Rec_news[’news_title’],50);echo ("...") ?> //從后臺(tái)讀出新聞?lì)}目的前25個(gè)漢字,如有超過則顯示省略號(hào)...