当前位置 : 主页 > 网络编程 > PHP >

PHP中文字符串截取函数

来源:互联网 收集:自由互联 发布时间:2021-06-28
/** * 中文字符串截取 * @param $str * @param int $start @起始位置 * @param $length @截取长度 * @param string $ending @结尾符 * @return string */private static function stringSubstr($str, $start=0, $length, $ending=''){ //$s
 
/**
 * 中文字符串截取
 * @param $str
 * @param int $start @起始位置
 * @param $length @截取长度
 * @param string $ending @结尾符
 * @return string
 */
private static function stringSubstr($str, $start=0, $length, $ending=''){
    //$str =  htmlspecialchars_decode($str); //实体字符转为html
    $str = trim(strip_tags($str)); //去除html字符
    $str = preg_replace("/\\s| | /", "", $str);
    $mb_str = mb_substr($str, $start, $length, 'utf-8');
    if($length < method::abslength($str)){
        $output = $mb_str.$ending;
    }else{
        $output = $mb_str;
    }
    return $output;
}
  
/**
 * 可以统计中文字符串长度的函数
 * @param $str @要计算长度的字符串
 * @return int @计算长度类型,0(默认)表示一个中文算一个字符,1表示一个中文算两个字符
 */
private static function abslength($str){
    if(empty($str)){
        return 0;
    }
  
    if(function_exists('mb_strlen')){
        return mb_strlen($str,'utf-8');
    } else {
        preg_match_all("/./u", $str, $ar);
        return count($ar[0]);
    }
}

网友评论