首页 > PHP学习 > php中文截取乱码怎么办-PHP问题

php中文截取乱码怎么办-PHP问题

时间:2022年7月23日 分类:PHP学习 浏览量:263

php中文截取乱码的解决办法:首先利用ASCII编码和中文编码的二进制范围不一致而把它们区分开来;然后通过【substr()】截取字符串的函数实现的。

 =$length){ return $str; } //初始化,统计字符串的个数, $count = 0; for($i=0;$i<$length;$i++){ //达到个数跳出循环,$i即为要截取的长度 if($count == $len){ break; } $count++; //ord函数是获取字符串的ASCII编码,大于等于十六进制0x80的字符串即为中文字符串 if(ord($str{$i}) >= 0x80){ $i +=2;//中文编码的字符串的长度再加2 } } //如果要截取的个数超过了字符串的总个数,那么我们返回全部字符串,不带省略号 if($len > $count){ return $str; }else{ return substr($str,0,$i).&#39;...&#39;; } }

以上代码的实现就是利用单字节字符的ASCII码小于0x80。至于要跳过几个字节,这要看具体是什么编码。

相关免费学习推荐:php编程(视频)

以上就是php中文截取乱码怎么办的详细内容,

觉得文章有用就打赏一下文章作者

微信扫一扫打赏