- 浏览: 42102 次
文章分类
最新评论
<?php /****首先是CSDN论坛PHP斑竹xuzuning(唠叨)老大的,支持gb2312,gbk,big三种编码。 以下是代码: http://www.jbxue.com ***/ $len = 19; $text = "怎么将新闻的很长的标题只显示前面一些字,后面用.....来代替?"; echo strlen($text)<=$len ? $text : (substr($text,0,$len).chr(0)."...."); /****chr(0)不是null null是什么都没有,而chr(0)的值是0。表示成16进制是0x00,表示成二进制是00000000 虽然chr(0)不会显示出什么,但是他是一个字符。 当汉字被截断时,根据编码规则他总是要把后边的其他字符拉过来一起作为汉字解释,这就是出现乱码的原因。而值为0x81到0xff与0x00组合始终都显示为“空” 根据这一特点,在substr的结果后面补上一个chr(0),就可以防止出现乱码了 注: 编码 第一字节 第二字节 gb2312 0xa1-0xf7 0xa1-0xfe gbk 0x81-0xfe 0x81-0xfe 0x40-0x7e big5 0xa1-0xf7 0x81-0xfe 0x40-0x7e 其次这个是网上搜索的,支持utf-8编码,原作者不详: *****/ function subString_UTF8($str, $start, $lenth) { $len = strlen($str); $r = array(); $n = 0; $m = 0; for($i = 0; $i < $len; $i++) { $x = substr($str, $i, 1); $a = base_convert(ord($x), 10, 2); $a = substr('00000000'.$a, -8); if ($n < $start){ if (substr($a, 0, 1) == 0) { }elseif (substr($a, 0, 3) == 110) { $i += 1; }elseif (substr($a, 0, 4) == 1110) { $i += 2; } $n++; }else{ if (substr($a, 0, 1) == 0) { $r[ ] = substr($str, $i, 1); }elseif (substr($a, 0, 3) == 110) { $r[ ] = substr($str, $i, 2); $i += 1; }elseif (substr($a, 0, 4) == 1110) { $r[ ] = substr($str, $i, 3); $i += 2; }else{ $r[ ] = ''; } if (++$m >= $lenth){ break; } } } return $r; } // End subString_UTF8; }// End String #由于此函数返回的是一个数组,因此要配合join函数来显示字符串: #join('',subString_UTF8($str, $start, $lenth)); #在页面显示的时候还可以在此语句后面连一个"..."
本文出处参考:http://www.jbxue.com/article/449.html
发表评论
-
php导出word格式数据的代码一例
2013-11-14 16:24 1104发布:thatboy 来源:脚本学堂 【 大 ... -
php生成word文档的代码
2013-11-07 11:51 1198一、用windows里面自带的com,然后用 php生成wo ... -
php 导出word(可包含图片)
2013-11-07 11:44 815发布:sunday01 来源:Net 今天 为大家介绍 ... -
PHP获取域名及域名IP的方法
2013-10-17 15:46 2367最近在做的一个项目用到获取域名和IP的功能,大致有以下几种方法 ... -
php socket模拟http中post或get提交数据
2013-08-08 12:19 2680php socket模拟http中post或者get提交数据的 ... -
浅析php变量作用域的一些问题
2013-08-08 12:14 602学过C的人用php的时候一 ... -
下载站mime属性设置(让文件可下载)
2013-07-18 16:02 809一些下载网站为了支持更多的格式,一般情况下支持rar,zip等 ... -
PHP 数组和字符串互相转换的方法分享
2013-07-18 15:58 527PHP 具有两个函数,可以在字符串和数组之间互相进行转换。 ... -
php数组与字符串的转换函数整理汇总
2013-07-18 15:52 774对php中的数组与字符串的转换函数进行了详细的整理汇总。 1 ... -
php文件上传与下载的实例分享
2013-07-18 15:49 680分享有关php下载的相关文章。 先分享几个文件下载类: ph ... -
php设计模式之命令模式的应用举例
2013-05-21 22:50 469所谓,命令模式:将一个请求封装为一个对象,从而你可用不同的请求 ... -
php设计模式之观察者模式的应用示例
2013-05-21 22:47 561所谓,观察者模式:定义对象间一种一对多的依赖关系,当一个对象的 ... -
php生成随机密码的函数一例
2013-05-21 22:42 466生成随机密码的函数,可自定义密码长度。 <?php / ... -
php打印网页的代码举例
2013-05-02 23:17 1337本文出处参考:http://www.jbxue.com/art ... -
php iconv字符串编码转换(GBK到UTF8字符集)的方法与实例
2013-05-02 23:14 3635本文原始链接:http://www ... -
一个php ftp类(复制、移动、删除文件、创建目录等)
2013-05-01 05:06 737一个不错的ftp操作类,可以完成复制、移动、删除文件、创建目录 ... -
php get_headers 判断URL是否有效的方法
2013-05-01 05:02 1090使用php get_headers判断url的真实有效性。 还 ... -
PHPmailer 邮件群发的实例代码
2013-05-01 05:00 753本文出处参考:http://www.jbxue.com/art ... -
PHPMailer邮件类发送邮件举例(smtp.163.com)
2013-04-27 22:27 16321、下载PHPMailer文件包,PHPMailer邮件发送类 ... -
PHP 获取指定月对应天数的代码
2013-04-17 05:59 610<?php /** * 获取指定月对应的天数 * ...
相关推荐
Delphi 字符串截取函数详细应用以及例子
C#开发中经常用到一些字符串截取的函数,文档中含有大多数的函数
名称 :盛飞字符串截取函数 作用 :按指定首尾字符串截取内容(本函数为从左向右截取)
SQL截取字符串函数(1、截取从字符串左边开始N个字符 2、截取从字符串右边开始N个字符(例如取字符www.163.com) 3、截取字符串中任意位置及长度 等等)
php截断字符串优化函数 php截断字符串优化函数 php截断字符串优化函数
主要震碎js字符串截取函数slice、substring和substr进行比较,感兴趣的小伙伴们可以参考一下
在golang中可以通过切片截取一个数组或字符串,但是当截取的字符串是中文时,可能会出现问题,下面我们来自定义个函数解决Golang中文字符串截取问题
php中的一个中文字符串截取函数
本文实例讲述了php自定义中文字符串截取函数substr_for_gb2312及substr_for_utf8用法。分享给大家供大家参考,具体如下: /* *gb2312中文字符串截取 */ function substr_for_gb2312($str,$start,$len=null) { $...
asp 字符串截取函数
通过 逗号 等 符号间隔的字符串进行截取
pb split() pb 字符串分割函数 自己写的字符串分割函数
字符串的截取php内置函数就有很多种; 简单示例如下; $str='123/456/789/abc'; 截取第一个斜杠前面的内容可以这样来: echo substr($str,0,strpos($str, '/')) 或者 $array=explode('/', $str); echo $array...
string常用截取字符串方法有很多,但是配合使用以下两种,基本都能满足要求: find(string strSub, npos); find_last_of(string strSub, npos); 其中strSub是需要寻找的子字符串,npos为查找起始位置。找到返回子...
C语言字符串替换函数strrpl支持中文汉字,解决含中文汉字,可能替换错误的情况。支持GBK、GB18030字符串。
js字符串截取函数slice、substring和substr的比较_.docx
js截取字符串函数.txt
pb函数库之字符串操作函数pb函数库之字符串操作函数pb函数库之字符串操作函数pb函数库之字符串操作函数
oracle 中字符串截取 。oracle中字符截取的函数。