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


Posted in PHP onMay 28, 2015

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 相关文章推荐
56.com视频采集接口程序(PHP)
Sep 22 PHP
IIS下PHP连接数据库提示mysql undefined function mysql_connect()
Jun 04 PHP
PHP 的异常处理、错误的抛出及回调函数等面向对象的错误处理方法
Dec 07 PHP
完美解决令人抓狂的zend studio 7代码提示(content Assist)速度慢的问题
Jun 20 PHP
php foreach循环中使用引用的问题
Nov 06 PHP
PHP @ at 记号的作用示例介绍
Oct 10 PHP
PHP中浮点数计算比较及取整不准确的解决方法
Jan 09 PHP
php通过递归方式复制目录和子目录的方法
Mar 13 PHP
windows7配置Nginx+php+mysql的详细教程
Sep 04 PHP
php rsa 加密,解密,签名,验签详解
Dec 06 PHP
PHP实现会员账号单唯一登录的方法分析
Mar 07 PHP
php 获取音视频时长,PHP 利用getid3 获取音频文件时长等数据
Apr 01 PHP
typecho插件编写教程(五):核心代码
May 28 #PHP
php实现paypal 授权登录
May 28 #PHP
typecho插件编写教程(四):插件挂载
May 28 #PHP
PHP Opcache安装和配置方法介绍
May 28 #PHP
typecho插件编写教程(三):保存配置
May 28 #PHP
PHP通过API获取手机号码归属地
May 28 #PHP
typecho插件编写教程(二):写一个新插件
May 28 #PHP
You might like
php中关于codeigniter的xmlrpc的类在进行数据交换时的类型问题
2011/07/03 PHP
MySQL的FIND_IN_SET函数使用方法分享
2012/03/27 PHP
PHP中array_merge和array相加的区别分析
2013/06/17 PHP
xss防御之php利用httponly防xss攻击
2014/03/21 PHP
PHP 实现判断用户是否手机访问
2015/01/21 PHP
详解PHP匿名函数与注意事项
2016/03/29 PHP
php加密之discuz内容经典加密方式实例详解
2017/02/04 PHP
php如何计算两坐标点之间的距离
2018/12/29 PHP
使用composer命令加载vendor中的第三方类库 的方法
2019/07/09 PHP
JavaScript constructor和instanceof,JSOO中的一对欢喜冤家
2009/05/25 Javascript
两个JavaScript jsFiddle JSBin在线调试器
2010/03/14 Javascript
Javascript实现仿WebQQ界面的“浮云”兼容 IE7以上版本及FF
2011/04/27 Javascript
jquery.pagination.js 无刷新分页实现步骤分享
2012/05/23 Javascript
js实现在页面上弹出蒙板技巧简单实用
2013/04/16 Javascript
基于jquery实现一张图片点击鼠标放大再点缩小
2013/09/29 Javascript
jQuery自定义添加&quot;$&quot;与解决&quot;$&quot;冲突的方法
2015/01/19 Javascript
标准的js无缝滚动效果
2016/08/30 Javascript
JS模拟实现ECMAScript5新增的数组方法
2017/03/20 Javascript
prototype.js简单实现ajax功能示例
2017/10/18 Javascript
详解React中setState回调函数
2018/06/14 Javascript
JavaScript中的几种继承方法示例
2020/12/06 Javascript
Vue 实现一个简单的鼠标拖拽滚动效果插件
2020/12/10 Vue.js
[01:05:41]EG vs Optic Supermajor 败者组 BO3 第二场 6.6
2018/06/07 DOTA
python模拟新浪微博登陆功能(新浪微博爬虫)
2013/12/24 Python
Python选择排序、冒泡排序、合并排序代码实例
2015/04/10 Python
Python把csv数据写入list和字典类型的变量脚本方法
2018/06/15 Python
python使用opencv驱动摄像头的方法
2018/08/03 Python
python matplotlib:plt.scatter() 大小和颜色参数详解
2020/04/14 Python
详解html2canvas截图不能截取圆角图片的解决方案
2018/01/30 HTML / CSS
Ted Baker美国官网:英国时尚品牌
2018/10/29 全球购物
大学生求职简历的自我评价
2013/10/21 职场文书
求职者怎样写自荐信
2014/04/13 职场文书
主题党日活动总结
2014/07/08 职场文书
新郎父亲婚礼致辞
2015/07/27 职场文书
关于Mybatis中SQL节点的深入解析
2022/03/19 Java/Android
深入理解 Golang 的字符串
2022/05/04 Golang