解决中英文字符串长度问题函数


Posted in PHP onJanuary 16, 2007
function strSplit($s, $len) { 
    $end = '…'; 
    $result = ''; 
    $strLen = strlen($s); 
    if ($strLen <= $len) { 
        return $s; 
    } 
    $len -= 2; 
    for ($i=0; $i<$len && $i<$strLen; $i++) { 
        $c = $s[$i]; 
        if (ord($c) < 0x80) { 
            $result .= $c; 
        } elseif ($i+1<$len) { 
            $result .= $s[$i++] . $s[$i]; 
        } 
    } 
    return ($i < $strLen) ? ($result . $end) : $result; 
} echo strSplit('1234567', 10), '<br />'; 
echo strSplit('1234567890', 10), '<br />'; 
echo strSplit('1234中文567890abcdefghijkl', 10), '<br />'; 
echo strSplit('全部都是中文', 10), '<br />'; 
echo strSplit('全a部b都c是d中e文', 10), '<br />';  
输出: 
1234567 
1234567890 
1234中文… 
全部都是… 
全a部b都… 
PHP 相关文章推荐
PHP 高手之路(二)
Oct 09 PHP
PHP多线程抓取网页实现代码
Jul 22 PHP
php做下载文件的实现代码及文件名中乱码解决方法
Feb 03 PHP
php若干单维数组遍历方法的比较
Sep 20 PHP
php页面缓存ob系列函数介绍
Oct 18 PHP
使用PHP备份MYSQL数据的多种方法
Jan 15 PHP
本地计算机无法启动Apache故障处理
Aug 08 PHP
WordPress中is_singular()函数简介
Feb 05 PHP
php中ob_flush函数和flush函数用法分析
Mar 18 PHP
你应该知道PHP浮点数知识
May 13 PHP
PHP中通过trigger_error触发PHP错误示例
Jun 23 PHP
php之可变函数的实例详解
Sep 13 PHP
在数据量大(超过10万)的情况下
Jan 15 #PHP
php防注
Jan 15 #PHP
PHP 的 __FILE__ 常量
Jan 15 #PHP
MySQL相关说明
Jan 15 #PHP
mysql_fetch_assoc和mysql_fetch_row的功能加起来就是mysql_fetch_array
Jan 15 #PHP
关于mysql 字段的那个点为是定界符
Jan 15 #PHP
最令PHP初学者们头痛的十四个问题
Jan 15 #PHP
You might like
PHP对象Object的概念 介绍
2012/06/14 PHP
yii2实现根据时间搜索的方法
2016/05/25 PHP
PHP简单实现数字分页功能示例
2016/08/24 PHP
php生成HTML文件的类方法
2019/10/11 PHP
Javascript中的this绑定介绍
2011/09/22 Javascript
css transform 3D幻灯片特效实现步骤解读
2013/03/27 Javascript
深入理解javascript中return的作用
2013/12/30 Javascript
javascript页面渲染速度测试脚本分享
2014/04/15 Javascript
JavaScript参数个数可变的函数举例说明
2014/10/10 Javascript
JavaScript数据类型详解
2015/04/01 Javascript
基于AngularJS实现页面滚动到底自动加载数据的功能
2015/10/16 Javascript
jquery实现简单的表单验证
2015/11/17 Javascript
JavaScript获取服务器时间的方法详解
2016/12/11 Javascript
值得收藏的vuejs安装教程
2017/11/21 Javascript
基于vue2实现左滑删除功能
2017/11/28 Javascript
js技巧之十几行的代码实现vue.watch代码
2018/06/09 Javascript
vue.js 中使用(...)运算符报错的解决方法
2018/08/09 Javascript
微信小程序非swiper组件实现的自定义伪3D轮播图效果示例
2018/12/11 Javascript
JS原生瀑布流效果实现
2019/04/26 Javascript
详解Vue中的基本语法和常用指令
2019/07/23 Javascript
[01:02]DOTA2辉夜杯决赛日 CDEC.Y对阵VG赛前花絮
2015/12/27 DOTA
python迭代器的使用方法实例
2013/11/21 Python
删除python pandas.DataFrame 的多重index实例
2018/06/08 Python
python实现比较文件内容异同
2018/06/22 Python
Tensorflow分类器项目自定义数据读入的实现
2019/02/05 Python
django下创建多个app并设置urls方法
2020/08/02 Python
python Matplotlib数据可视化(2):详解三大容器对象与常用设置
2020/09/30 Python
一篇文章带你搞定Ubuntu中打开Pycharm总是卡顿崩溃
2020/11/02 Python
Desigual英国官网:在线购买原创服装
2018/03/09 全球购物
啤酒销售实习自我鉴定
2013/09/24 职场文书
食堂员工工作职责
2013/12/18 职场文书
房地产销售计划书
2014/01/10 职场文书
奥利奥广告词
2014/03/20 职场文书
施工安全承诺书
2014/05/22 职场文书
廉洁自律承诺书范文
2015/04/28 职场文书
思想品德课教学反思
2016/02/24 职场文书