php自定义函数截取汉字长度


Posted in PHP onMay 15, 2014
function msubstr($str,$start,$len) { 
$strlen=$start+$len; 
for($i=0;$i<$strlen;$i++) { 
if(ord(substr($str,$i,1))>0xa0) { 
$tmpstr.=substr($str,$i,2); 
$i++; 
} else 
$tmpstr.=substr($str,$i,1); 
} 
return $tmpstr; }

<?PHP 
$str="这个字符好长呀,^_^"; 
$Short_Str=showShort($str,4);//截取前面4个汉字,结果为:这个字符... 
Echo "$Short_Str"; 
Function csubstr($str,$start,$len) 
{ 
$strlen=strlen($str); 
$clen=0; 
for($i=0;$i<$strlen;$i++,$clen++) 
{ 
if ($clen>=$start+$len) 
break; 
if(ord(substr($str,$i,1))>0xa0) 
{ 
if ($clen>=$start) 
$tmpstr.=substr($str,$i,2); 
$i++; 
} 
else 
{ 
if ($clen>=$start) 
$tmpstr.=substr($str,$i,1); 
} 
} return $tmpstr; 
} 
Function showShort($str,$len) 
{ 
$tempstr = csubstr($str,0,$len); 
if ($str<>$tempstr) 
$tempstr .= "..."; //要以什么结尾,修改这里就可以. 
return $tempstr; 
}

再来看看唠叨的方法 怎么样,简洁吧?
$len = 19; 
$text = "怎么将新闻的很长的标题只显示前面一些字,后面用.....来代替?"; 
echo strlen($text)<=$len ? $text : (substr($text,0,$len).chr(0)."....");
PHP 相关文章推荐
Php做的端口嗅探器--可以指定网站和端口
Oct 09 PHP
php mysql数据库操作分页类
Jun 04 PHP
PHP数据类型之整数类型、浮点数的介绍
Apr 28 PHP
基于empty函数的输出详解
Jun 17 PHP
php对图像的各种处理函数代码小结
Jul 08 PHP
CI(CodeIgniter)框架中的增删改查操作
Jun 10 PHP
php字符串过滤与替换小结
Jan 26 PHP
php实现的简单检验登陆类
Jun 18 PHP
PHP编程中的__clone()方法使用详解
Nov 27 PHP
详解WordPress中添加友情链接的方法
May 21 PHP
php封装的验证码类分享
Feb 26 PHP
Laravel学习教程之request validation的编写
Oct 25 PHP
php获取服务器端mac和客户端mac的地址支持WIN/LINUX
May 15 #PHP
php小技巧之过滤ascii控制字符
May 14 #PHP
PHP 之 写时复制介绍(Copy On Write)
May 13 #PHP
PHP中copy on write写时复制机制介绍
May 13 #PHP
php读取富文本的时p标签会出现红线是怎么回事
May 13 #PHP
php的慢速日志引起的Mysql错误问题分析
May 13 #PHP
PHP实现的MongoDB数据库操作类分享
May 12 #PHP
You might like
php截取后台登陆密码的代码
2012/05/05 PHP
js技巧--转义符&quot;\&quot;的妙用
2007/01/09 Javascript
Javascript(AJAX)解析XML的代码(兼容FIREFOX/IE)
2010/07/11 Javascript
疯狂Jquery第一天(Jquery学习笔记)
2012/05/11 Javascript
THREE.JS入门教程(3)着色器-下
2013/01/24 Javascript
jQuery中not()方法用法实例
2015/01/06 Javascript
JavaScript实现图片滑动切换的代码示例分享
2016/03/06 Javascript
javascript简单判断输入内容是否合法的方法
2016/05/11 Javascript
Javascript使用SWFUpload进行多文件上传
2016/11/16 Javascript
js手机号批量滚动抽奖实现代码
2020/04/17 Javascript
jQuery中DOM节点删除之empty与remove
2017/01/20 Javascript
Textarea输入字数限制实例(兼容iOS&amp;安卓)
2017/07/06 Javascript
Vue 2.0学习笔记之Vue中的computed属性
2017/10/16 Javascript
vue 判断两个时间插件结束时间必选大于开始时间的代码
2020/11/04 Javascript
react-native 实现购物车滑动删除效果的示例代码
2021/01/15 Javascript
python Selenium爬取内容并存储至MySQL数据库的实现代码
2017/03/16 Python
Python入门_浅谈字符串的分片与索引、字符串的方法
2017/05/16 Python
python aiohttp的使用详解
2019/06/20 Python
Django中Aggregation聚合的基本使用方法
2020/07/09 Python
python实现控制台输出颜色
2021/03/02 Python
关于PySnooper 永远不要使用print进行调试的问题
2021/03/04 Python
css3发光搜索表单分享
2014/04/11 HTML / CSS
CSS3绘制圆角矩形的简单示例
2015/09/28 HTML / CSS
Java程序员常见面试题
2015/07/16 面试题
体育老师的教学自我评价分享
2013/11/19 职场文书
医学生自荐信范文
2013/12/03 职场文书
大一新生军训时的自我评价分享
2013/12/05 职场文书
名人演讲稿范文
2013/12/28 职场文书
消防安全管理制度
2014/02/01 职场文书
迟到检讨书500字
2014/02/05 职场文书
如何写好建议书
2014/03/13 职场文书
会计毕业生自荐书
2014/06/12 职场文书
合作意向书
2014/07/30 职场文书
2015年幼儿园师德师风建设工作总结
2015/10/23 职场文书
使用pycharm运行flask应用程序的详细教程
2021/06/07 Python
Mybatis-Plus进阶分页与乐观锁插件及通用枚举和多数据源详解
2022/03/21 Java/Android