老话重提--PHP中汉字截取
来源:互联网 发布:网络枪机配什么镜头 编辑:程序博客网 时间:2024/05/17 22:24
似乎这种问题永远都有人在论坛上面问 以前人们用的函数都差不多 今天看见了PHP专栏版主唠叨的方法 简洁的很
首先我们看看以前应用的两种方法
---------------------------------------------------------------
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中汉字截取
- PHP中汉字截取
- php 汉字截取
- php 截取汉字字符串
- PHP中可以避免乱码的截取汉字
- php中截取汉字,避免半个字节的问题
- (转)PHP截取完整汉字
- PHP截取汉字乱码问题
- PHP之随机截取汉字
- PHP之随机截取汉字
- gb2312汉字截取乱码 UTF8 中文乱码 汉字截取乱码 PHP截取汉字乱码
- 自动识别汉字的PHP截取字符串函数
- smarty modifier.truncate.php 汉字截取修改
- php 截取UTF-8 GBK汉字
- php截取汉字长度自定义函数
- PHP截取各种编码的汉字字符串
- PHP中处理截取汉字,出现乱码问题的2个类
- 南昌地区使用“星空急速”的电信用户实现一台ADSL实现多机上网的方法
- read my mind
- cde无法启动问题和aix的x11中文环境包
- 测试Blog
- 系统按键与非系统按键
- 老话重提--PHP中汉字截取
- 小记一次服务器提权
- .Net 学习路径
- 在C语言中以编程的方式获取函数名
- 浅谈C/C++内存泄漏及其检测工具
- 在C语言中巧用正则表达式
- 浅议C语言中灵魂数组和指针的互操作
- 找到方向,找到方法
- 存取程序状态的几种方法——Java I/O应用杂谈