php支持中文字符串分割的函数

yipeiwu_com6年前PHP代码库

str_split不支持中文,利用mb_xx函数实现个

/**
 * Convert a string to an array
 * @param string $str
 * @param number $split_length
 * @return multitype:string
 */
function mb_str_split($str,$split_length=1,$charset="UTF-8"){
  if(func_num_args()==1){
    return preg_split('/(?<!^)(?!$)/u', $str);
  }
  if($split_length<1)return false;
  $len = mb_strlen($str, $charset);
  $arr = array();
  for($i=0;$i<$len;$i+=$split_length){
    $s = mb_substr($str, $i, $split_length, $charset);
    $arr[] = $s;
  }
  return $arr;
}

方法二:

function mbStrSplit ($string, $len=1) {
  $start = 0;
  $strlen = mb_strlen($string);
  while ($strlen) {
    $array[] = mb_substr($string,$start,$len,"utf8");
    $string = mb_substr($string, $len, $strlen,"utf8");
    $strlen = mb_strlen($string);
  }
  return $array;
}

以上所述就是本文的全部内容了,希望大家能够喜欢。

相关文章

php根据指定位置和长度获得子字符串的方法

本文实例讲述了php根据指定位置和长度获得子字符串的方法。分享给大家供大家参考。具体分析如下: php的substr函数功能非常强大,不断可以从前往后去子字符串还可以从后往前取字符串...

PHP实现返回JSON和XML的类分享

代码很简洁,功能也很简单实用,这里就不多废话了,直接奉上代码: 复制代码 代码如下: <?php     class Reponse{ &nb...

php中删除字符串中最先出现某个字符的实现代码

复制代码 代码如下: $a = "字符串";$c= explode("要删除的文字", $a, 2); $b = $c[0].$c[1]; explode (PHP 3, PHP 4,...

深入理解PHP之require/include顺序 推荐

也就有了如下的疑问: include_path是怎么起作用的? 如果有多个include_path顺序是怎么样的? 什么情况下include_path不起作用? 今天, 我就全面的介绍下...

php实现的一段简单概率相关代码

本文实例讲述了php实现的一段简单概率相关代码。分享给大家供大家参考,具体如下: <?php for($i=1;$i<100000;$i++){ $x=mt_ra...