PHP字符操作之限制新聞標題的顯示字數

<?php
header('Content-Type:text/html;charset=GB2312');
function cutstr($str,$cutleng)
{
    $str = $str; //要截取的字符串
    $cutleng = $cutleng; //要截取的長度
    $strleng = strlen($str); //字符串長度
    if($cutleng>$strleng)return $str;//字符串長度小於規定字數時,返回字符串本身
    $notchinanum = 0; //初始不是漢字的字符數
    for($i=0;$i<$cutleng;$i++)
    {
        if(ord(substr($str,$i,1))<=128)
        {
            $notchinanum++;
        }
    }
    if(($cutleng%2==1)&&($notchinanum%2==0)) //如果要截取奇數個字符,所要截取長度範圍內的字符必須含奇數個非漢字,否則截取的長度加一
    {
        $cutleng++;
    }
    if(($cutleng%2==0)&&($notchinanum%2==1)) //如果要截取偶數個字符,所要截取長度範圍內的字符必須含偶數個非漢字,否則截取的長度加一
    {
        $cutleng++;
    }
    return substr($str,0,$cutleng);
}
?>
<?php
$row_Rec_news['news_title']="dddddddd截取指定數量的字符串顯示eefffe";
echo cutstr( $row_Rec_news['news_title'],20);echo ("...");//從後臺讀出新聞標題的前10個漢字(20個字符)
?>
發佈了26 篇原創文章 · 獲贊 3 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章