首页 > 其他 > 网站日记>正文

汉语文章的智能截取

提示: 阅读权限:公开  

有的时候,在截取文章的时候,我们希望保语义的完整。也就是说,不能截取半句话。

jiuhecai在临汾9月阴天里,写下了这个智能截取函数:

function AI_mb_substr($str,$length,$encode='utf8',$flags='. ! ? 。 ! ?'){
    mb_internal_encoding($encode);
    $mylen=mb_strlen($str);
    if($mylen<=$length)return $str;
    $flagsr=explode(' ',$flags);
    for($i=$length;$i<$mylen;$i++){
        if(in_array(mb_substr($str,$i,1),$flagsr))break;
    }
    for($j=$length-1;$j>-1;$j--){
        if(in_array(mb_substr($str,$j,1),$flagsr))break;
    }
    if($j==-1 && $i==$mylen){
     
    }elseif($j==-1){
        $length=$i+1;
    }elseif($i==$mylen){
        $length=$j+1;
    }else{
        if($i+$j>2*$length){
            $length=$j+1;
        }else{
            $length=$i+1;
        }
    }
    return mb_substr($str,0,$length);
}
echo AI_mb_substr("ni好!我也很好.我们都很好!中药方大全网站是个好网站呢?",15);
?>


上一篇:帝国cms自动分页的智能化

下一篇:帝国cms比较完美的长文章自动分页函数,不破坏html格式

tags:

返回首页

相关

热门

站内直通车

[!--temp.bottomnav--]
返回顶部