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

yipeiwu_com7年前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对MongoDB[NoSQL]数据库的操作

一、MongoDB简介 MongoDB (名称来自"humongous") 是一个可扩展的、高性能、开源、模式自由、面向文档的数据库,集文档数据库、键值对存储和关系型数据库的优点于一身。...

win10 apache配置虚拟主机后localhost无法使用的解决方法

win10 apache配置虚拟主机后localhost无法使用的解决方法

win10系统配置虚拟主机 1.用记事本或Sublime Text打开httpd.conf ctrl + f 搜索httpd-vhosts.conf 将 #Include conf...

PHP精确计算功能示例

本文实例讲述了PHP精确计算功能。分享给大家供大家参考,具体如下: 引言:一定要确保数据的准确性。这是一个好的程序员的基本素养。 <?php /** * 精确加法...

一个php短网址的生成代码(仿微博短网址)

分享一个php短网址的生成代码。 复制代码 代码如下: <!DOCTYPE html> <html lang="en"> <head> <met...