php chr() ord()中文截取乱码问题解决方法
2008-09-08 00:00
453 查看
<?php $lenth = 19; $str = "怎么将新闻的很长的标题只显示前面一些字,后面用.....来代替?"; echo strlen($str)<=$lenth ? $str : (substr($str,0,$lenth).chr(0)."...."); ?>
<? /* @ 另一种方法,使用ord()函数: @ 适用于 gb2312 编码: */ $str = "怎么将新闻的很长的标题只显示前面一些字,后面用.....来代替?"; function gb2312_substr($str, $limit) { $restr =''; for($i=0;$i< $limit-3;$i++) { $restr .= ord($str[$i])>127 ? $str[$i].$str[++$i] : $str[$i]; } return $restr; } /* @ 以下仅适用于 utf-8 编码; */ function utf8_substr($str, $limit) { $restr = ''; for($i=0;$i< $limit-3;$i++) { $restr .= ord($str[$i])>127 ? $str[$i].$str[++$i].$str[++$i] : $str[$i]; } return $restr; } //解释下上面第一个:chr(0)不是null,null是什么都没有,而chr(0)的值是0。表示成16进制是0x00,表示成二进制是00000000虽然chr(0)不会显示出什么,但是他是一个字符。虽然chr(0)不会显示出什么,但是他是一个字符。当汉字被截断时,根据编码规则他总是要把后边的其他字符拉过来一起作为汉字解释,这就是出现乱码的原因。 ?>
相关文章推荐
- php chr() ord()中文截取乱码问题解决方法
- jsp带中文请求参数的乱码问题的解决方法
- 中文乱码问题及其解决方法(java中)
- SSH Secure Shell 工具 ,linux中文乱码问题的解决方法
- soapUI参数中文乱码问题解决方法 (groovy脚本中文乱码)
- 对于使用了SSH造成的中文乱码问题,4大解决方法
- httpclient返回值中文乱码问题解决方法
- 解决Tomcat中文乱码问题之多解决方法
- jsp传值中文乱码问题解决方法示例介绍
- Tomcat中文乱码问题的原理和解决方法
- 如何解决jQuery load方法加载文档时的中文乱码问题
- keil中文注释乱码显示问题解决方法
- win7 64位系统使用VS2010生成时出现中文目录乱码问题的解决方法
- jquery中ajax方法提交数据时,中文乱码问题解决。
- 4种方法解决后台接受前台中文信息乱码的问题
- Tomcat中文乱码问题的原理和解决方法
- Python2.x中文乱码问题解决方法
- node爬虫爬取中文时乱码问题 | nodejs gb2312、GBK中文乱码解决方法
- js传中文参数controller里获取参数乱码问题解决方法