PHP实现中文字串截取无乱码的方法…

原创 2016年05月31日 14:21:55
在ASCII中,0xa0表示汉字的开始 其中php中的一个函数ord()函数 此函数功能返回一个字符的askii码值; 如ord('A')=65; 请看此函数 实现中文字串截取无

这是明显用来处理截取一段汉字的程序,在ASCII中,0xa0表示汉字的开始

其中php中的一个函数ord()函数

此函数功能返回一个字符的askii码值;

如ord('A')=65;

请看此函数

实现中文字串截取无乱码的方法。
答:

function GBsubstr($string, $start, $length) {

    if(strlen($string)>$length){

    $str=null;

    $len=$start+$length;

    for($i=$start;$i<</span>$len;$i++){

        if(ord(substr($string,$i,1))>0xa0){

            //ord()函数返回字符的 ASCII (美国国家标准交换码) 序数值。本函数和 chr() 函数相反。

            $str.=substr($string,$i,2);

               $i++;

        }else{

               $str.=substr($string,$i,1);

            }

    }

       return $str.'...';

    }else{

    return $string;

   }

}

 

相关文章推荐

php实现中文字串截取无乱码的三种方法(详)

substr的用法(看手册): 定义和用法 substr() 函数返回字符串的一部分。 注释:如果 start 参数是负数且 length 小于或等于 start,则 l...

android 导入项目 项目中文字乱码问题

乱码问题出现了几次,一直没有在意,今天又出现了,现总结如下: eclipse之所以会出现乱码问题是因为eclipse编辑器选择的编码规则是可变的。一般默认都是UTF-8或者GBK,当从外部导入的...

Android 导入项目 项目中文字乱码问题

乱码问题出现了几次,一直没有在意,今天又出现了,现总结如下: eclipse之所以会出现乱码问题是因为eclipse编辑器选择的编码规则是可变的。一般默认都是UTF-8或者GBK,当从外部导入的一个工...

android 导入项目 项目中文字乱码问题

乱码问题出现了几次,一直没有在意,今天又出现了,现总结如下: eclipse之所以会出现乱码问题是因为eclipse编辑器选择的编码规则是可变的。一般默认都是UTF-8或者GBK,当从外部导入的...

用PHP来截取中文字符串而不出现乱码的实现方法

如何截取中文字符串而不出现乱码?  /* 功能:截取全角和半角混合的字符串以避免乱码 参数: $str_cut 需要截断的字符串 $length  允许字符串显示的最大长度 */...

最长回文字串(mancher算法)

POJ 3974 最长回文字串(manacher算法) 分类: 数据结构2013-09-06 14:43 490人阅读 评论(0) 收藏 举报 题意:给出一个字符串,求出最长回文字串。 思...

九度OJ 1528 最长回文字串

题目地址:http://ac.jobdu.com/problem.php?pid=1528 回文大家应该都知道了,正反看都一样,题目意思就是求一个字符串的子串,要求这个子串是回文。 ...

字符串系列---最长回文字串

题目Given a string S, find the longest palindromic substring in S. * You may assume that the maximu...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PHP实现中文字串截取无乱码的方法…
举报原因:
原因补充:

(最多只允许输入30个字)