php mb_substr实现中文字符串截取无乱码的方法
发布:smiling 来源: PHP粉丝网 添加日期:2014-09-12 13:49:10 浏览: 评论:0
在网上看到有很多字符截取函数大仔细研究了一下发现所有的都是针对编码问题进行处理了,下面我们看一个简化的函数,希望对大家有帮助.
注意:在windows目录下找到php.ini打开编辑,搜索mbstring.dll,找到:
;extension=php_mbstring.dll,把前面的;号去掉,这样mb_substr函数就可以生效了.
php例子代码如下:
- <?php
- $str = '这样一来我的字符串就不会有乱码^_^';
- echo "mb_substr:" . mb_substr($str, 0, 7, 'utf-8');
- //结果:这样一来我的字
- echo "<br>";
- echo "mb_strcut:" . mb_strcut($str, 0, 6, 'utf-8');
- //结果:这样
- ?>
从上面的例子可以看出,mb_substr是按字来切分字符,而mb_strcut是按字节来切分字符,但是都不会产生半个字符的现象,代码如下:
- /**
- * 实现中文字串截取无乱码的方法
- */
- function getSubstr($string, $start, $length) {
- if(mb_strlen($string,'utf-8')>$length){
- $str = mb_substr($string, $start, $length,'utf-8');
- return $str.'...';//开源代码phpfensi.com
- }else{
- return $string;
- }
- }
Tags: mb_substr 中文字符乱码
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)