php字符串截取函数mb_substr用法实例分析
发布:smiling 来源: PHP粉丝网 添加日期:2021-11-28 18:16:56 浏览: 评论:0
这篇文章主要介绍了php字符串截取函数mb_substr用法,结合实例形式分析了php使用mb_substr针对中文字符串截取与编码控制相关操作技巧,需要的朋友可以参考下。
本文实例讲述了php字符串截取函数mb_substr用法,分享给大家供大家参考,具体如下:
string mb_substr ( string $str , int $start [, int $length = NULL [, string $encoding = mb_internal_encoding() ]] )-截取字符串
(PHP 4 >= 4.0.6, PHP 5)
$str 要获取字符串的目标字符串(字符串起始位置为0)
$start,$str中要使用的第一个字符的位置
$length,获取的子字符串的长度(注意不是结束位置)
$encoding,可指定字符编码(一般用于处理中文字符时使用,同时这个问题碰到的非常多)
示例:
- <?php
- mb_internal_encoding ("UTF-8"); //如果把UTF-8改为编码,下面针对于中文字符串处理的值会改变。
- echo mb_internal_encoding().""; //获取字符编码为ISO-8859-1
- echo mb_substr('abcdefghijk',0,9).""; //abcdefghi
- echo mb_substr('abcdefghijk',1,5).""; //bcdef
- echo mb_substr('我们都是中国人',0,9).""; //我们都是中国人
- echo mb_substr('我们都是中国人',0,9,'gb2312').""; //我们都是中
- echo mb_substr('我们都是中国人',0,9,'utf-8'); //我们都是中国人
- ?>
总结:
1、在处理英文字符串的时候,该函数的第四个参数($encoding)可以忽略。
2、在处理中文字符串的时候,就要小心了,一定要考虑编码问题,编码不同,中文的值也不同。
3、在中文字符串导入数据库时,就显得更为重要了。
4、处理字符串或文本的编码能力,是衡量程序员功力的一项标准。
补充:substr和mb_substr的区别
异同点:
两个函数都是截取字符串的长度,不同的是mb_substr可以针对多字节编码的汉字进行截取,从而防止乱码的出现
实例说明:
示例1:
- <?php
- $chuan="我是中国人!";
- echo substr($chuan,0,3);
- echo '<br />';
- echo mb_substr($chuan,0,3,'utf8');
- ?>
运行结果:
我
我是中
在utf8编码下,由于一个汉字占3个字节,所以第一个输出的是: 我
第二个输出的是: 我是中
示例2:
- <?php
- $chuan="我是中国人!";
- echo substr($chuan,0,-4);
- echo '<br />';
- echo mb_substr($chuan,0,-2,'utf8');
- ?>
运行结果:
我是中国
我是中国
两个输出的都是: 我是中国
第一个长度为负4,就会省略掉!和人,从零开始,就会包括我是中国
第二个同理
Tags: php字符串截取 mb_substr
相关文章
- ·php字符串截取代码(2014-08-16)
- ·php字符串截取,支持中文和其他编码(2014-08-28)
- ·php字符串截取函数(2014-09-18)
- ·php字符串截取函数,支持中英文混体(2014-09-19)
- ·php字符串截取函数(2014-09-19)
- ·php字符串截取函数,支持中文 utf-8截取(2014-09-19)
- ·多个PHP中文字符串截取函数(2020-06-23)
- ·php字符串截取函数用法分析(2021-04-30)
- ·PHP中substr函数字符串截取用法分析(2021-07-04)
- ·php中中文截取函数mb_substr()详细(2013-11-30)
- ·substr(),mb_substr()及mb_strcut函数用法与区别(2014-01-17)
- ·PHP截断函数mb_substr()详细介绍(2014-09-14)
- ·php截取字符串函数substr,iconv_substr,mb_substr示例以及优劣分析(2021-02-10)
- ·php mb_substr()函数截取中文字符串应用示例(2021-03-27)
- ·自己写的php中文截取函数mb_strlen和mb_substr(2021-05-10)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)