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 相关文章推荐
关于zend studio 出现乱码问题的总结
Jun 23 PHP
一个好用的PHP验证码类实例分享
Dec 27 PHP
PHP处理Json字符串解码返回NULL的解决方法
Sep 01 PHP
php 在线导入mysql大数据程序
Jun 11 PHP
PHP批量生成图片缩略图的方法
Jun 18 PHP
PHP curl模拟登录带验证码的网站
Nov 30 PHP
Laravel 5.3 学习笔记之 安装
Aug 28 PHP
php分页查询mysql结果的base64处理方法示例
May 18 PHP
thinkphp5 加载静态资源路径与常量的方法
Dec 24 PHP
php7函数,声明,返回值等新特性介绍
May 25 PHP
laravel 验证错误信息到 blade模板的方法
Sep 29 PHP
ThinkPHP 5 AJAX跨域请求头设置实现过程解析
Oct 28 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 nl2br函数 将换行字符转成 &amp;lt;br&amp;gt;
2009/08/21 PHP
解析在PHP中使用mysqli扩展库对mysql的操作
2013/07/03 PHP
thinkphp实现图片上传功能分享
2014/03/04 PHP
浅谈php(codeigniter)安全性注意事项
2017/04/06 PHP
Yii框架连表查询操作示例
2019/09/06 PHP
use jscript with List Proxy Server Information
2007/06/11 Javascript
JavaScript 函数调用规则
2009/09/14 Javascript
Javascript 二维数组
2009/11/26 Javascript
jquery 注意事项与常用语法小结
2010/06/07 Javascript
JavaScript小技巧 2.5 则
2010/09/12 Javascript
jQuery最佳实践完整篇
2011/08/20 Javascript
Jquery 模拟用户点击超链接或者按钮的方法
2013/10/25 Javascript
jquery.ui.draggable中文文档(原文翻译)
2013/11/15 Javascript
原生JavaScript实现Ajax的方法
2016/04/07 Javascript
如何用JavaScript实现动态修改CSS样式表
2016/05/20 Javascript
Vue2.0父组件与子组件之间的事件发射与接收实例代码
2017/09/19 Javascript
vue-cli脚手架build目录下utils.js工具配置文件详解
2018/09/14 Javascript
python修改操作系统时间的方法
2015/05/18 Python
Python 实现简单的电话本功能
2015/08/09 Python
Python学习笔记之解析json的方法分析
2017/04/21 Python
浅析Python中的赋值和深浅拷贝
2017/08/15 Python
django站点管理详解
2017/12/12 Python
Python统计python文件中代码,注释及空白对应的行数示例【测试可用】
2018/07/25 Python
对Python中小整数对象池和大整数对象池的使用详解
2019/07/09 Python
python实现大学人员管理系统
2019/10/25 Python
python删除指定列或多列单个或多个内容实例
2020/06/28 Python
利用Python优雅的登录校园网
2020/10/21 Python
浅谈css3中的前缀
2016/07/20 HTML / CSS
给排水专业应届生求职信
2013/10/12 职场文书
客服工作职责
2013/12/11 职场文书
法警的竞聘演讲稿
2014/01/02 职场文书
挂职锻炼个人总结
2015/03/05 职场文书
2015年清明节扫墓演讲稿
2015/03/18 职场文书
七一晚会主持词
2015/06/29 职场文书
社团招新宣传语
2015/07/13 职场文书
2016年第十九届推普周活动总结
2016/04/06 职场文书