php截取包含混合字符串长度的函数

2018-07-20    来源:open-open

容器云强势上线!快速搭建集群,上万Linux镜像随意使用
 肯定是中文、英文、特殊字符都能实现的。
//utf-8中文截取,单字节截取模式
function cn_substr_utf8($str,$length,$append='...',$start=0){
    if(strlen($str)<$start+1){
        return '';
    }
    preg_match_all("/./su",$str,$ar);
    $str2='';
    $tstr='';
    for($i=0;isset($ar[0][$i]);$i++){
        if(strlen($tstr)<$start){
            $tstr.=$ar[0][$i];
        }else{
            if(strlen($str2)<$length + strlen($ar[0][$i])){
                $str2.=$ar[0][$i];
            }else{
                break;
            }
        }
    }
    return $str==$str2?$str2:$str2.$append;
}
//----使用举例如下:
echo cn_substr_utf8('我是一个,和哈,哦也,,国家!',12);

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:Json格式美化

下一篇:JavaScript SHA1加密算法实现详细代码