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 相关文章推荐
Windows下IIS6/Apache2.2.4+MySQL5.2+PHP5.2.1安装配置方法
May 03 PHP
PHP curl 并发最佳实践代码分享
Sep 05 PHP
用C/C++扩展你的PHP 为你的php增加功能
Sep 06 PHP
PHP页面间参数传递的四种方法详解
Jun 09 PHP
解析在apache里面给php写虚拟目录的详细方法
Jun 24 PHP
php字符串截取的简单方法
Jul 04 PHP
php利用单例模式实现日志处理类库
Feb 10 PHP
php获取字符串中各个字符出现次数的方法
Feb 23 PHP
php实现网站留言板功能
Nov 04 PHP
php对微信支付回调处理的方法
Aug 23 PHP
PHP正则判断一个变量是否为正整数的方法
Feb 27 PHP
PHP与SQL语句写一句话木马总结
Oct 11 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
图解上海144收音机
2021/03/02 无线电
php中目录,文件操作详谈
2007/03/19 PHP
php5 pdo新改动加载注意事项
2008/09/11 PHP
PHP5中新增stdClass 内部保留类
2011/06/13 PHP
用PHP读取超大文件的实例代码
2012/04/01 PHP
实例介绍PHP的Reflection反射机制
2014/08/05 PHP
使用jscript实现二进制读写脚本代码
2008/06/09 Javascript
Jquery之美中不足小结
2011/02/16 Javascript
JS控件的生命周期介绍
2012/10/22 Javascript
jquery实现控制表格行高亮实例
2013/06/05 Javascript
三种取消选中单选框radio的方法
2014/09/09 Javascript
jQuery表单验证功能实例
2015/08/28 Javascript
JS实现兼容性好,带缓冲的动感网页右键菜单效果
2015/09/18 Javascript
跟我学习javascript的最新标准ES6
2015/11/20 Javascript
JavaScript每天必学之数组和对象部分
2016/09/17 Javascript
AngularJS中过滤器的使用与自定义实例代码
2016/09/17 Javascript
vue.js利用Object.defineProperty实现双向绑定
2017/03/09 Javascript
jquery操作ul的一些操作笔记整理(干货)
2017/08/31 jQuery
JavaScript中的一些隐式转换和总结(推荐)
2017/12/22 Javascript
纯JS实现的读取excel文件内容功能示例【支持所有浏览器】
2018/06/23 Javascript
微信小程序单选radio及多选checkbox按钮用法示例
2019/04/30 Javascript
Python中特殊函数集锦
2015/07/27 Python
TensorFlow在MAC环境下的安装及环境搭建
2017/11/14 Python
微信跳一跳python辅助脚本(总结)
2018/01/11 Python
Python 通过requests实现腾讯新闻抓取爬虫的方法
2019/02/22 Python
详解Python_shutil模块
2019/03/15 Python
PyQt5通信机制 信号与槽详解
2019/08/07 Python
Django前后端分离csrf token获取方式
2020/12/25 Python
HTML5 Convas APIs方法详解
2015/04/24 HTML / CSS
KIKO比利时官网:意大利彩妆品牌
2017/07/23 全球购物
Hammitt官网:设计师手袋
2020/05/23 全球购物
乡镇党员群众路线教育实践活动对照检查材料思想汇报
2014/10/05 职场文书
2014年科研工作总结
2014/12/03 职场文书
学生检讨书范文
2015/01/27 职场文书
小学三年级作文之写景
2019/11/05 职场文书
vue使用v-model进行跨组件绑定的基本实现方法
2021/04/28 Vue.js