一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

多個PHP中文字符串截取函數

復制代碼 代碼如下:
<?php
function sysSubStr($string,$length,$append = false)
{
    if(strlen($string) <= $length )
    {
        return $string;
    }
    else
    {
        $i = 0;
        while ($i < $length)
        {
            $stringTMP = substr($string,$i,1);
            if ( ord($stringTMP) >=224 )
            {
                $stringTMP = substr($string,$i,3);
                $i = $i + 3;
            }
            elseif( ord($stringTMP) >=192 )
            {
                $stringTMP = substr($string,$i,2);
                $i = $i + 2;
            }
            else
            {
                $i = $i + 1;
            }
            $stringLast[] = $stringTMP;
        }
        $stringLast = implode("",$stringLast);
        if($append)
        {
            $stringLast .= "...";
        }
        return $stringLast;
    }
}

$string = "簡明現代魔法 ―― 專注于互聯網主流的各種技術";
$length = "27";
$append = true;
echo sysSubStr($string,$length,$append);
// 輸出
// 簡明現代魔法 ―― 專...
?>

截取GB2312中文字符串:
復制代碼 代碼如下:
<?php
//截取中文字符串
function mysubstr($str, $start, $len) {
    $tmpstr = "";
    $strlen = $start + $len;
    for($i = 0; $i < $strlen; $i++) {
        if(ord(substr($str, $i, 1)) > 0xa0) {
            $tmpstr .= substr($str, $i, 2);
            $i++;
        } else
            $tmpstr .= substr($str, $i, 1);
    }
    return $tmpstr;
}
?>

截取utf8編碼的多字節字符串:
復制代碼 代碼如下:
<?php
//截取utf8字符串
function utf8Substr($str, $from, $len)
{
    return preg_replace('#^(?:[/x00-/x7F]|[/xC0-/xFF][/x80-/xBF]+){0,'.$from.'}'.
                       '((?:[/x00-/x7F]|[/xC0-/xFF][/x80-/xBF]+){0,'.$len.'}).*#s',
                       '$1',$str);
}
?>

UTF-8、GB2312都支持的漢字截取函數:
復制代碼 代碼如下:
<?php
/*
Utf-8、gb2312都支持的漢字截取函數
cut_str(字符串, 截取長度, 開始長度, 編碼);
編碼默認為 utf-8
開始長度默認為 0
*/

function cut_str($string, $sublen, $start = 0, $code = 'UTF-8')
{
    if($code == 'UTF-8')
    {
        $pa = "/[/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]/";
        preg_match_all($pa, $string, $t_string);

        if(count($t_string[0]) - $start > $sublen) return join('', array_slice($t_string[0], $start, $sublen))."...";
        return join('', array_slice($t_string[0], $start, $sublen));
    }
    else
    {
        $start = $start*2;
        $sublen = $sublen*2;
        $strlen = strlen($string);
        $tmpstr = '';

        for($i=0; $i< $strlen; $i++)
        {
            if($i>=$start && $i< ($start+$sublen))
            {
                if(ord(substr($string, $i, 1))>129)
                {
                    $tmpstr.= substr($string, $i, 2);
                }
                else
                {
                    $tmpstr.= substr($string, $i, 1);
                }
            }
            if(ord(substr($string, $i, 1))>129) $i++;
        }
        if(strlen($tmpstr)< $strlen ) $tmpstr.= "...";
        return $tmpstr;
    }
}

$str = "abcd需要截取的字符串";
echo cut_str($str, 8, 0, 'gb2312');
?>

php技術多個PHP中文字符串截取函數,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 色婷婷久| 午夜激情视频在线 | 91新人| 思思久久q6热在精品国产 | 美女视频网 | 国产精品日韩欧美在线第3页 | 国产三级全黄 | 欧美成人午夜视频 | 国产精品专区第二 | 六月婷婷六月天 | se94se欧美 | 广东东莞一级毛片免费 | 国产一区二区三区久久精品 | 一二三四视频社区在线播放中国 | 国内黄色精品 | 69免费在线视频 | 青青国产成人久久91网 | 亚洲国产精品久久久久网站 | 欧美福利网 | 国产一区二区三区不卡观 | 久久精品国产亚洲片 | 94久久国产乱子伦精品免费 | 国产成人精品一区二区 | 亚洲一区二区三区麻豆 | 亚洲天堂99 | 四虎海外影库www4hu | 亚洲haose在线观看 | 韩国午夜理伦三级2020宅男 | 免费欧美一级 | 国产精品久久久久毛片真精品 | 色呦呦免费 | 无码精品一区二区三区免费视频 | 亚洲国产色婷婷精品综合在线观看 | 国产精品视频免费看 | 日本在线www| 国产精选在线观看 | 91在线视频精品 | 秋霞影音先锋一区二区 | 亚洲国产综合精品中文字幕 | 精品一区二区三区免费视频 | 一级做a爰片性色毛片思念网 |