支持中文的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 相关文章推荐
解析PHP获取当前网址及域名的实现代码
Jun 23 PHP
php实现水仙花数示例分享
Apr 03 PHP
php sybase_fetch_array使用方法
Apr 15 PHP
php操作mongoDB实例分析
Dec 29 PHP
PHP微信开发之二维码生成类
Jun 26 PHP
WordPress中注册菜单与调用菜单的方法详解
Dec 18 PHP
phalcon框架使用指南
Feb 23 PHP
详解PHP的Yii框架中扩展的安装与使用
Apr 01 PHP
老生常谈ThinkPHP中的行为扩展和插件(推荐)
May 05 PHP
php使用curl下载指定大小的文件实例代码
Sep 30 PHP
PHP后期静态绑定之self::限制实例分析
Dec 21 PHP
在 Laravel 6 中缓存数据库查询结果的方法
Dec 11 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图片加水印原理(超简单的实例代码)
2013/01/18 PHP
php中cookie实现二级域名可访问操作的方法
2014/11/11 PHP
Yii2 GridView实现列表页直接修改数据的方法
2016/05/16 PHP
ThinkPHP 5.1 跨域配置方法
2019/10/11 PHP
Javascript打印网页部分内容的脚本
2008/11/17 Javascript
JavaScript 基础问答三
2008/12/03 Javascript
js实现点小图看大图效果的思路及示例代码
2013/10/28 Javascript
js动态设置鼠标事件示例代码
2013/10/30 Javascript
推荐4个原生javascript常用的函数
2015/01/12 Javascript
JS组件Bootstrap Table表格多行拖拽效果实现代码
2015/12/08 Javascript
详解JavaScript正则表达式之RegExp对象
2015/12/13 Javascript
JavaScript html5 canvas绘制时钟效果
2016/03/01 Javascript
如何解决手机浏览器页面点击不跳转浏览器双击放大网页
2016/07/01 Javascript
jQuery:unbind方法的使用详解
2017/08/14 jQuery
新手入门带你学习JavaScript引擎运行原理
2019/06/24 Javascript
在layui框架中select下拉框监听更改事件的例子
2019/09/20 Javascript
html+vue.js 实现漂亮分页功能可兼容IE
2020/11/07 Javascript
Python实现备份文件实例
2014/09/16 Python
Python中的特殊语法:filter、map、reduce、lambda介绍
2015/04/14 Python
在Python中使用成员运算符的示例
2015/05/13 Python
Python实现股市信息下载的方法
2015/06/15 Python
Python实例一个类背后发生了什么
2016/02/09 Python
Python3实现发送QQ邮件功能(html)
2017/12/15 Python
python自动截取需要区域,进行图像识别的方法
2018/05/17 Python
用python实现刷点击率的示例代码
2019/02/21 Python
Django框架使用mysql视图操作示例
2019/05/15 Python
Python正则表达式匹配数字和小数的方法
2019/07/03 Python
opencv3/python 鼠标响应操作详解
2019/12/11 Python
pycharm安装及如何导入numpy
2020/04/03 Python
纯CSS3实现的8种Loading动画效果
2014/07/05 HTML / CSS
New Balance天猫官方旗舰店:始于1906年,百年慢跑品牌
2017/11/15 全球购物
关于期中考试的反思
2014/02/02 职场文书
优秀社区干部事迹材料
2014/02/03 职场文书
《雪儿》教学反思
2014/04/17 职场文书
学校党的群众路线教育实践活动整改措施
2014/10/25 职场文书
情侣餐厅的创业计划书范本!
2019/07/26 职场文书