php支持gb2312,uft-8中英文字符截取函数
发布:smiling 来源: PHP粉丝网 添加日期:2013-11-29 15:21:38 浏览: 评论:0
- <?php
- //截取gb2312中文字符串
- function mysubstr($str, $start, $len) {
- $tmps教程tr = "";
- $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
- //截取utf8字符串
- function utf8substr($str, $from, $len)
- {
- return preg_replace('#^(?:[x00-x7f]|[xc0-xff][x80-xbf]+){0,'.$from.'}'.
- '((?:[x00-x7f]|[xc0-xff][x80-xbf]+){0,'.$len.'}).*#s',
- '$1',$str);
- }
- ?>
把上面两个例子整合了
- /*
- utf-8、gb2312都支持的汉字截取函数
- cut_str(字符串, 截取长度, 开始长度, 编码);
- 编码默认为 utf-8
- 开始长度默认为 0
- */
- function cut_str($string, $sublen, $start = 0, $code = 'utf-8')
- {
- if($code == 'utf-8')
- {
- $pa = "/[x01-x7f]|[xc2-xdf][x80-xbf]|xe0[xa0-xbf][x80-xbf]|[xe1-xef][x80-xbf][x80-xbf]|xf0[x90-xbf][x80-xbf][x80-xbf]|[xf1-xf7][x80-xbf][x80-xbf][x80-xbf]/";
- preg_match_all($pa, $string, $t_string);
- if(count($t_string[0]) - $start > $sublen) return join('', array_slice($t_string[0], $start, $sublen))."...";
- return join('', array_slice($t_string[0], $start, $sublen));
- }
- else
- {
- $start = $start*2;
- $sublen = $sublen*2;
- $strlen = strlen($string);
- $tmpstr = '';
- for($i=0; $i< $strlen; $i++)
- {
- if($i>=$start && $i< ($start+$sublen))
- {
- if(ord(substr($string, $i, 1))>129)
- {
- $tmpstr.= substr($string, $i, 2);
- }
- else
- {
- $tmpstr.= substr($string, $i, 1);
- }
- }
- if(ord(substr($string, $i, 1))>129) $i++;
- }
- if(strlen($tmpstr)< $strlen ) $tmpstr.= "...";
- return $tmpstr;
- }
- }
- $str = "abcd需要截取的字符串";
- echo cut_str($str, 8, 0, 'gb2312');
- ?>
Tags: gb2312 uft-8 截取函数
相关文章
- ·php 检测是否为utf-8还是gb2312编码(2014-07-10)
- ·php获取字符串uft-8编码(2014-08-17)
- ·php中文汉字截取函数(2013-11-12)
- ·php中英文字符串截取函数(包括html)(2014-08-02)
- ·php 中英文字符串截取函数(2014-08-05)
- ·php中截取字符串函数(2014-09-02)
- ·php中高性能中文字符串截取函数分享(2014-09-02)
- ·php中文字符串截取函数(2014-09-09)
- ·php字符串截取函数(2014-09-18)
- ·php字符串截取函数,支持中英文混体(2014-09-19)
- ·php字符串截取函数(2014-09-19)
- ·php字符串截取函数,支持中文 utf-8截取(2014-09-19)
- ·PHP截取中文字符串函数总结(2015-04-10)
- ·php字符串截取函数用法分析(2021-04-30)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)