function cstr($text, $start=0, $limit=12)
    {
        if (function_exists('mb_substr')) {
            $more = (mb_strlen($text) > $limit) ? TRUE : FALSE;
            $text = mb_substr($text, 0, $limit, 'UTF-8');
            return array($text, $more);
        } elseif (function_exists('iconv_substr')) {
            $more = (iconv_strlen($text) > $limit) ? TRUE : FALSE;
            $text = iconv_substr($text, 0, $limit, 'UTF-8');
            return array($text, $more);
        } else {
              preg_match_all("/[\x01-\x7f]|[\xc2-\xdf][\x80-\xbf]|\xe0[\xa0-\xbf][\x80-\xbf]|[\xe1-\xef][\x80-\xbf][\x80-\xbf]|\xf0[\x90-\xbf][\x80-\xbf][\x80-\xbf]|[\xf1-\xf7][\x80-\xbf][\x80-\xbf][\x80-\xbf]/",  $text, $ar);
            if(func_num_args() >= 3) {
                if (count($ar[0])>$limit) {
                    $more = TRUE;
                    $text = join("",array_slice($ar[0],0,$limit))."...";
                }
                $more = TRUE;
                $text = join("",array_slice($ar[0],0,$limit));
            } else {
                $more = FALSE;
                $text =  join("",array_slice($ar[0],0));
            }
            return array($text, $more);
        }
}
function sub_str($text, $limit=25)
{
    $val = cstr($text, 0, $limit);
    return $val[1] ? $val[0]."..." : $val[0];
}  Cách sử dụng:
PHP Code:
$str = "Hỗ trợ lập trình";
echo sub_str($str, 5);  Và một số hàm cắt tiêu đề bài viết có thể nói là tương đối ổn.
function cut_string($str,$len,$more){ //Hàm cắt đoạn văn
if ($str=="" || $str==NULL) return $str;
if (is_array($str)) return $str;
$str = trim($str);
if (strlen($str) <= $len) return $str;
$str = substr($str,0,$len);
if ($str != "") {
if (!substr_count($str," ")) {
if ($more) $str .= " ...";
return $str;
}
while(strlen($str) && ($str[strlen($str)-1] != " ")) {
$str = substr($str,0,-1);
}
$str = substr($str,0,-1);
if ($more) $str .= " ...";
}
return $str;
}
function cut_title($text, $len) { //Hàm cắt tiêu đề Unicode
mb_internal_encoding('UTF-8');
if( (mb_strlen($text, 'UTF-8') > $len) ) {
$text = mb_substr($text, 0, $len, 'UTF-8');
$text = mb_substr($text, 0, mb_strrpos($text," ", 'UTF-8'), 'UTF-8')."...";
}
return $text;
}
Không có nhận xét nào:
Đăng nhận xét