支持中文的PHP按字符串长度分割成数组代码


Posted in PHP onMay 17, 2015

以下是我编写的代码,实现对中英文混杂字符进行分割:

<?php
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;
}

header('Content-type:text/html;charset=utf-8');
$str = '我爱北京3我爱上海-我爱xianggang';
$r = mbStrSplit($str, 4);
echo '<pre>';
print_r($r);
echo '</pre>';
?>

运行结果:

Array
(
  [0] => 我爱北京
  [1] => 3我爱上
  [2] => 海-我爱
  [3] => xian
  [4] => ggan
  [5] => g
)




<?php
 function str_split_unicode($str, $l = 0) {
 if ($l > 0) {
 $ret = array();
 $len = mb_strlen($str,"UTF-8");
 for ($i = 0; $i < $len; $i += $l) {
 $ret[] = mb_substr($str, $i, $l,"UTF-8");
}
 return $ret;
}
 return preg_split("//u", $str, -1, PREG_SPLIT_NO_EMPTY);
}
?>
 $s ="还未如愿sss见gfg者不rtret不朽"; // Mild milk
 print_r(str_split($s, 5));
 print_r(str_split_unicode($s, 5));

//输出
 //Array ( [0] => 还�� [1] => �如� [2] => ��sss [3] => 见gf [4] => g者� [5] => ��rtr [6] => et不 [7] => 朽 )
 //Array ( [0] => 还未如愿s [1] => ss见gf [2] => g者不rt [3] => ret不朽 )

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

PHP 相关文章推荐
MySQL GBK→UTF-8编码转换
May 24 PHP
mysql+php分页类(已测)
Mar 31 PHP
php at(@)符号的用法简介
Jul 11 PHP
探讨PHP使用eAccelerator的API开发详解
Jun 09 PHP
php使用百度ping服务代码实例
Jun 19 PHP
PHP中使用Imagick读取pdf并生成png缩略图实例
Jan 21 PHP
php打乱数组二维数组多维数组的简单实例
Jun 17 PHP
谈谈PHP连接Access数据库的注意事项
Aug 12 PHP
PHP实现的文件上传类与用法详解
Jul 05 PHP
PHP操作Redis常用技巧总结
Apr 24 PHP
php使用mysqli和pdo扩展,测试对比mysql数据库的执行效率完整示例
May 09 PHP
php文件上传原理与实现方法详解
Dec 20 PHP
php 批量查询搜狗sogou代码分享
May 17 #PHP
PHP解密Unicode及Escape加密字符串
May 17 #PHP
PHP实现远程下载文件到本地
May 17 #PHP
PHP生成json和xml类型接口数据格式
May 17 #PHP
php实现文本数据导入SQL SERVER
May 17 #PHP
php中PDO方式实现数据库的增删改查
May 17 #PHP
PHP图像处理类库及演示分享
May 17 #PHP
You might like
PHP中在数据库中保存Checkbox数据(2)
2006/10/09 PHP
PHP获取浏览器信息类和客户端地理位置的2个方法
2014/04/24 PHP
PHP给源代码加密的几种方法汇总(推荐)
2018/02/06 PHP
PHP常量及变量区别原理详解
2020/08/14 PHP
IE浏览器打印的页眉页脚设置解决方法
2009/12/08 Javascript
js图片自动切换效果处理代码
2013/05/07 Javascript
用Jquery.load载入页面后样式没了页面混乱的解决方法
2014/10/20 Javascript
JQuery基础语法小结
2015/02/27 Javascript
JS实现文字放大效果的方法
2015/03/03 Javascript
Javascript中的包装类型介绍
2015/04/02 Javascript
基于JavaScript制作霓虹灯文字 代码 特效
2015/09/01 Javascript
JavaScript进阶练习及简单实例分析
2016/06/03 Javascript
jquery写出PC端轮播图实例
2018/01/26 jQuery
JavaScript事件对象event用法分析
2018/07/27 Javascript
为react组件库添加typescript类型提示的方法
2020/06/15 Javascript
JavaScript实现世界各地时间显示
2020/09/07 Javascript
[12:29]2018国际邀请赛 开幕秀
2018/08/22 DOTA
在GitHub Pages上使用Pelican搭建博客的教程
2015/04/25 Python
pygame播放音乐的方法
2015/05/19 Python
python验证码识别教程之灰度处理、二值化、降噪与tesserocr识别
2018/06/04 Python
Django框架设置cookies与获取cookies操作详解
2019/05/27 Python
Django admin.py 在修改/添加表单界面显示额外字段的方法
2019/08/22 Python
Python 3.8 新功能大揭秘【新手必学】
2020/02/05 Python
浅谈在django中使用filter()(即对QuerySet操作)时踩的坑
2020/03/31 Python
Pytho爬虫中Requests设置请求头Headers的方法
2020/09/22 Python
用CSS3实现背景渐变的方法
2015/07/14 HTML / CSS
英国最大的电子产品和家电零售企业:Currys PC World
2016/09/24 全球购物
数控技校生自我鉴定
2014/03/02 职场文书
艺术学院毕业生求职信
2014/07/09 职场文书
工作态度不端正检讨书
2014/10/04 职场文书
政府会议通知范文
2015/04/15 职场文书
党员承诺书范文2015
2015/04/27 职场文书
教师节简报
2015/07/20 职场文书
2015年董事长秘书工作总结
2015/07/23 职场文书
浅析Django接口版本控制
2021/06/26 Python
React更新渲染原理深入分析
2022/12/24 Javascript