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


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操作XML作为数据库的类
Dec 19 PHP
PHP读取网页文件内容的实现代码(fopen,curl等)
Jun 23 PHP
PHP中获取内网用户MAC地址(WINDOWS/linux)的实现代码
Aug 11 PHP
解析PHP缓存函数的使用说明
May 10 PHP
PHP加密扩展库Mcrypt安装和实例
Nov 10 PHP
ThinkPHP模板自定义标签使用方法
Jun 26 PHP
Zend Framework教程之Zend_Registry对象用法分析
Mar 22 PHP
PHP实现链式操作的原理详解
Sep 16 PHP
php实现微信公众平台发红包功能
Jun 14 PHP
laravel5.0在linux下解决.htaccess无效和去除index.php的问题
Oct 16 PHP
PHP连接SQL server数据库测试脚本运行实例
Aug 24 PHP
PHP替换Word中变量并导出PDF图片的实现方法
Nov 26 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 地区分类排序算法
2013/07/01 PHP
大家在抢红包,程序员在研究红包算法
2015/08/31 PHP
高质量PHP代码的50个实用技巧必备(下)
2016/01/22 PHP
PHP类的特性实例分析
2016/09/28 PHP
PHP中的多种加密技术及代码示例解析
2016/10/20 PHP
PHP的new static和new self的区别与使用
2019/11/27 PHP
JavaScript判断DOM何时加载完毕的技巧
2012/11/11 Javascript
JavaScript中innerHTML,innerText,outerHTML的用法及区别
2015/09/01 Javascript
基于jQuery实现的菜单切换效果
2015/10/16 Javascript
JS调用某段SQL语句的方法
2016/10/20 Javascript
Cookies 和 Session的详解及区别
2017/04/21 Javascript
jQuery日期范围选择器附源码下载
2017/05/23 jQuery
Vue按需加载的具体实现
2017/12/02 Javascript
antd组件Upload实现自己上传的实现示例
2018/12/18 Javascript
Vue的双向数据绑定实现原理解析
2020/02/17 Javascript
JavaScript实现京东快递单号查询
2020/11/30 Javascript
探究Python多进程编程下线程之间变量的共享问题
2015/05/05 Python
python 在屏幕上逐字显示一行字的实例
2018/12/24 Python
浅谈Python中的可迭代对象、迭代器、For循环工作机制、生成器
2019/03/11 Python
python提取照片坐标信息的实例代码
2019/08/14 Python
PYTHON发送邮件YAGMAIL的简单实现解析
2019/10/28 Python
Django3.0 异步通信初体验(小结)
2019/12/04 Python
解决pycharm中导入自己写的.py函数出错问题
2020/02/12 Python
10个示例带你掌握python中的元组
2020/11/23 Python
全方位了解CSS3的Regions扩展
2015/08/07 HTML / CSS
html5 Canvas画图教程(2)—画直线与设置线条的样式如颜色/端点/交汇点
2013/01/09 HTML / CSS
html5的canvas方法使用指南
2014/12/15 HTML / CSS
MVC的各个部分都有那些技术来实现?如何实现?
2016/04/21 面试题
3.15国际消费者权益日主题活动活动总结
2014/03/16 职场文书
培训班开班仪式主持词
2014/03/28 职场文书
2014年师德承诺书
2014/05/23 职场文书
2015年光棍节活动总结
2015/03/24 职场文书
2015年餐厅服务员工作总结
2015/04/23 职场文书
新娘婚礼致辞
2015/07/27 职场文书
小学生六年级作文之关于感恩
2019/08/16 职场文书
CSS3 制作精美的定价表
2021/04/06 HTML / CSS