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


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 相关文章推荐
PHPShop存在多个安全漏洞
Oct 09 PHP
PHP之变量、常量学习笔记
Mar 27 PHP
php 在文件指定行插入数据的代码
May 08 PHP
PHP中的函数嵌套层数限制分析
Jun 13 PHP
基于empty函数的判断详解
Jun 17 PHP
PHP中new static()与new self()的区别异同分析
Aug 22 PHP
PHP比你想象的好得多
Nov 27 PHP
php实现求相对时间函数
Jun 15 PHP
Yii2简单实现给表单添加验证码的方法
Jul 18 PHP
PHP实现驼峰样式字符串(首字母大写)转换成下划线样式字符串的方法示例
Aug 10 PHP
PHP编程实现的TCP服务端和客户端功能示例
Apr 13 PHP
PHP 图片处理
Sep 16 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模拟HTTP认证
2006/10/09 PHP
dedecms中显示数字验证码的修改方法
2007/03/21 PHP
如何在smarty中增加类似foreach的功能自动加载数据
2013/06/26 PHP
php实现分页显示
2015/11/03 PHP
基于jquery的lazy loader插件实现图片的延迟加载[简单使用]
2011/05/07 Javascript
asp.net 30分钟掌握无刷新 Repeater
2011/09/16 Javascript
jQuery实现鼠标滑过点击事件音效试听
2015/08/31 Javascript
JavaScript中实现Map的示例代码
2015/09/09 Javascript
非常实用的12个jquery代码片段
2015/11/02 Javascript
编写高质量JavaScript代码的基本要点
2016/03/02 Javascript
jQuery.parseHTML() 函数详解
2017/01/09 Javascript
Angular.js实现多个checkbox只能选择一个的方法示例
2017/02/24 Javascript
js正则表达式验证表单【完整版】
2017/03/06 Javascript
详解Node.js开发中的express-session
2017/05/19 Javascript
Angular2入门教程之模块和组件详解
2017/05/28 Javascript
jQuery实现中奖播报功能(让文本滚动起来) 简单设置数值即可
2020/03/20 jQuery
es6函数之rest参数用法实例分析
2020/04/18 Javascript
[00:50]深扒TI7聊天轮盘语音出处6
2017/05/11 DOTA
python获取从命令行输入数字的方法
2015/04/29 Python
Python+微信接口实现运维报警
2016/08/27 Python
python爬虫实战之爬取京东商城实例教程
2017/04/24 Python
Python中判断输入是否为数字的实现代码
2018/05/26 Python
浅谈python中对于json写入txt文件的编码问题
2018/06/07 Python
Python3实现爬取简书首页文章标题和文章链接的方法【测试可用】
2018/12/11 Python
python实现杨氏矩阵查找
2019/03/02 Python
Python实现的矩阵转置与矩阵相乘运算示例
2019/03/26 Python
python日期与时间戳的各种转换示例
2020/02/12 Python
详解Canvas 实现炫丽的粒子运动效果(粒子生成文字)
2018/02/01 HTML / CSS
Probikekit日本:自行车套件,跑步和铁人三项装备
2017/04/03 全球购物
迪士尼法国在线商店:shopDisney FR
2020/12/03 全球购物
党员违纪检讨书
2014/02/18 职场文书
教师党员个人自我评价
2015/03/04 职场文书
优秀英文求职信范文
2015/03/19 职场文书
质检员岗位职责范本
2015/04/07 职场文书
小学生手册家长意见
2015/06/03 职场文书
感谢师恩主题班会
2015/08/17 职场文书