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

yipeiwu_com6年前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缩放图片(根据宽高的等比例缩放)实例介绍

推荐一个简单实用的缩放图片工具 SimpleImage,参考http://www.white-hat-web-design.co.uk/blog/resizing-images-with...

php实现在线通讯录功能(附源码)

本文实例为大家分享php在线通信录编写代码,供大家参考,具体内容如下 <?php session_start(); define("N", TRUE); if(empt...

在php7中MongoDB实现模糊查询的方法详解

前言 在实际开发中, 有不少的场景需要使用到模糊查询, MongoDB shell 模糊查询很简单: db.collection.find({'_id': /^5101/}) 上...

php 函数使用可变数量的参数方法

php在用户自定义函数中支持可变数量的参数列表。 在php5.5及更早的版本中,使用func_num_args(), func_get_arg(), func_get_args()函数实...

php使用str_replace实现输入框回车替换br的方法

本文实例讲述了php使用str_replace实现输入框回车替换br的方法,分享给大家供大家参考。具体实现方法如下: 在我们用textarea时会发现回车与空格是不可看到的,所以我们利用...