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

2015-04-07 0 906
php截取包含混合字符串长度的函数
 肯定是中文、英文、特殊字符都能实现的。
//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);

遇见资源网 php php截取包含混合字符串长度的函数 http://www.ox520.com/7521.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务