這是使用在UTF-8的編碼的環境下使用,我參考神隱部落所修改的PHP限制顯示字串語法:

原來的語法我使用後發現,當實際字數少於需要顯示的字數的時候,後面3個...還是會出現

原來是寫成 if (strlen($a) > $b) echo "...";

不知是變數$b沒有轉成數字型態還是怎樣

所以我將strlen($a) > $b 改為 strlen($a) > strlen($sub_content)

2個變數都先用strlen取得字串長度,在進行比較,就正常了

而且不會有中英文混雜時亂碼的問題

<?php
//裁切字串
function cut_content($a,$b){
    $a = strip_tags($a); //去除HTML標籤
    $sub_content = mb_substr($a, 0, $b, 'UTF-8'); //擷取子字串
    echo $sub_content;  //顯示處理後的摘要文字
    //顯示 "......"
    if (strlen($a) > strlen($sub_content)) echo "...";
}

//以上程式已經包裝起來,您可存放在例如:function.php網頁
//往後只要使用include("function.php");
//加上 cut_content($a,$b);即可,不需每次撰寫.
//$a代表欲裁切內容.
//$b代表欲裁切字數(字元數)
?>

arrow
arrow
    全站熱搜

    azan 發表在 痞客邦 留言(0) 人氣()