泰山神 发表于 2017-4-12 06:47:43

PHP的另类字符截取方法,彻低解决乱码

  用这种方式基本没乱码出现
  还支持不同的编码过来的字符串
  比一般的截取函数简单多了
  /**
* 字符串截取
*
* @param string $str 要截取字符串
* @param int $len 截取长度
* @param string $prefix 补充字符,如果截取了,则补充一个字符到后面,截取长度不包含这部分
* @param string $charset 编码
*
* @return string 截取后的字符串
*/
function cut_str_cn ($str , $len , $prefix='...' , $charset='utf-8')
{
/* 定义字符集 */
$arr['utf-8'] = "/||{2}|{3}/";
$arr['gb2312'] = "/|/";
$arr['gbk'] = "/|/";
$arr['big5'] = "/|(|/xa1-/xfe])/";
/* 字符放到数组内 */
preg_match_all($arr[$charset], $str, $match);
  /* 截取 */
$result = implode("",array_slice($match, 0, $len));
return $length<count($match)?($result.$prefix):$result;
}
页: [1]
查看完整版本: PHP的另类字符截取方法,彻低解决乱码