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


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 相关文章推荐
substr()函数中文版
Oct 09 PHP
php,不用COM,生成excel文件
Oct 09 PHP
php学习之运算符相关概念
Jun 09 PHP
比较详细PHP生成静态页面教程
Jan 10 PHP
php标签云的实现代码
Oct 10 PHP
php mysql_real_escape_string函数用法与实例教程
Sep 30 PHP
解决php接收shell返回的结果中文乱码问题
Jan 23 PHP
学习php设计模式 php实现抽象工厂模式
Dec 07 PHP
php array_merge_recursive 数组合并
Oct 26 PHP
PHP中串行化用法示例
Nov 16 PHP
thinkPHP中session()方法用法详解
Dec 08 PHP
PHP 文件上传后端处理实用技巧方法
Jan 06 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
人族 Terran 基本策略
2020/03/14 星际争霸
以文本方式上传二进制文件的PHP程序
2006/10/09 PHP
PHP中str_replace函数使用小结
2008/10/11 PHP
php session的锁和并发
2016/01/22 PHP
php项目中类的自动加载实例讲解
2019/09/12 PHP
jquery 图片预加载 自动等比例缩放插件
2008/12/25 Javascript
Web Inspector:关于在 Sublime Text 中调试Js的介绍
2013/04/18 Javascript
javascript中不等于的代码是什么怎么写
2013/12/29 Javascript
引用外部脚本时script标签关闭的写法
2014/01/20 Javascript
简化版手机端照片预览组件
2015/04/13 Javascript
AngularJS手动表单验证
2016/02/01 Javascript
详解Javascript继承的实现
2016/03/25 Javascript
基于zepto.js简单实现上传图片
2016/06/21 Javascript
JavaScript动态添加css样式和script标签
2016/07/19 Javascript
微信小程序 自己制作小组件实例详解
2016/12/22 Javascript
JavaScript EventEmitter 背后的秘密 完整版
2018/03/29 Javascript
详解VUE中常用的几种import(模块、文件)引入方式
2018/07/03 Javascript
ES6知识点整理之模块化的应用详解
2019/04/15 Javascript
前端Electron新手入门教程详解
2019/06/21 Javascript
ant design pro中可控的筛选和排序实例
2020/11/17 Javascript
[01:10:03]OG vs EG 2018国际邀请赛淘汰赛BO3 第三场 8.23
2018/08/24 DOTA
python 识别图片中的文字信息方法
2018/05/10 Python
python-Web-flask-视图内容和模板知识点西宁街
2019/08/23 Python
django实现更改数据库某个字段以及字段段内数据
2020/03/31 Python
Python中的特殊方法以及应用详解
2020/09/20 Python
HTML5 用动画的表现形式装载图像
2016/03/08 HTML / CSS
HTML5 Blob 实现文件下载功能的示例代码
2019/11/29 HTML / CSS
杭州-DOTNET笔试题集
2013/09/25 面试题
linux面试题参考答案(8)
2015/08/11 面试题
自荐信封面
2013/12/04 职场文书
安全事故检讨书
2014/01/18 职场文书
50岁生日感言
2014/01/23 职场文书
医院见习报告范文
2014/11/03 职场文书
某药房的新员工入职告知书!
2019/07/15 职场文书
python b站视频下载的五种版本
2021/05/27 Python
Rust中的Struct使用示例详解
2022/08/14 Javascript