php chr() ord()中文截取乱码问题解决方法


Posted in PHP onSeptember 08, 2008
<?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 相关文章推荐
PHP 无限分类三种方式 非函数的递归调用!
Aug 26 PHP
ThinkPHP中ajax使用实例教程
Aug 22 PHP
thinkphp模板赋值与替换实例简述
Nov 24 PHP
thinkphp实现上一篇与下一篇的方法
Dec 08 PHP
9个比较实用的php代码片段
Mar 15 PHP
CI框架数据库查询之join用法分析
May 18 PHP
PHP使用自定义方法实现数组合并示例
Jul 07 PHP
Yii2中简单的场景使用介绍
Jun 02 PHP
PHP获取数据库表中的数据插入新的表再原删除数据方法
Oct 12 PHP
使用PHP反射机制来构造&quot;CREATE TABLE&quot;的sql语句
Mar 21 PHP
解决php extension 加载顺序问题
Aug 16 PHP
php 比较获取两个数组相同和不同元素的例子(交集和差集)
Oct 18 PHP
wiki-shan写的php在线加密的解密程序
Sep 07 #PHP
php单件模式结合命令链模式使用说明
Sep 07 #PHP
网友原创的PHP模板类代码
Sep 07 #PHP
php 特殊字符处理函数
Sep 05 #PHP
php include,include_once,require,require_once
Sep 05 #PHP
php生成随机数或者字符串的代码
Sep 05 #PHP
PHP通用分页类page.php[仿google分页]
Aug 31 #PHP
You might like
php 友好URL的实现(吐血推荐)
2008/10/04 PHP
php列出一个目录下的所有文件的代码
2012/10/09 PHP
php不写闭合标签的好处
2014/03/04 PHP
php下foreach提示Warning:Invalid argument supplied for foreach()的解决方法
2014/11/11 PHP
php构造方法中析构方法在继承中的表现
2016/04/12 PHP
php遍历、读取文件夹中图片并分页显示图片的方法
2016/11/15 PHP
Laravel5中Cookie的使用详解
2017/05/03 PHP
PHP回调函数概念与用法实例分析
2017/11/03 PHP
PHP简单实现图片格式转换(jpg转png,gif转png等)
2019/10/30 PHP
javascript实现瀑布流自适应遇到的问题及解决方案
2015/01/28 Javascript
jQuery实现限制textarea文本框输入字符数量的方法
2015/05/28 Javascript
JQuery判断checkbox是否选中及其它复选框操作方法合集
2015/06/01 Javascript
JS使用正则截取两个字符串之间的字符串实现方法详解
2017/01/06 Javascript
详解微信小程序canvas圆角矩形的绘制的方法
2018/08/22 Javascript
vue项目使用.env文件配置全局环境变量的方法
2019/10/24 Javascript
JS如何生成随机验证码
2020/03/02 Javascript
vue中使用带隐藏文本信息的图片、图片水印的方法
2020/04/24 Javascript
Vue实现菜单切换功能
2020/11/08 Javascript
Python内置的字符串处理函数整理
2013/01/29 Python
python+selenium+autoit实现文件上传功能
2017/08/23 Python
使用Python来开发微信功能
2018/06/13 Python
Python机器学习库scikit-learn安装与基本使用教程
2018/06/25 Python
对python:print打印时加u的含义详解
2018/12/15 Python
在Pycharm中对代码进行注释和缩进的方法详解
2019/01/20 Python
Python Pandas数据结构简单介绍
2019/07/03 Python
python编程进阶之类和对象用法实例分析
2020/02/21 Python
Python修改列表值问题解决方案
2020/03/06 Python
django 利用Q对象与F对象进行查询的实现
2020/05/15 Python
python 如何利用argparse解析命令行参数
2020/09/11 Python
TUMI澳大利亚网站:美国旅行箱包品牌
2017/03/27 全球购物
Notino瑞典:购买香水和美容产品
2019/07/26 全球购物
Arti-shopping中文官网:大型海外商品一站式直邮平台
2020/03/23 全球购物
Ego Shoes官网:英国时髦鞋类品牌
2020/10/19 全球购物
2016新年慰问信范文
2015/03/25 职场文书
学生会部长竞选稿
2015/11/19 职场文书
会议承办单位欢迎词
2019/07/09 职场文书