找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1414|回复: 0
打印 上一主题 下一主题

浅析PHP substr,mb_substr以及mb_strcut的区别和用法

[复制链接]

2617

主题

2617

帖子

7789

积分

论坛元老

Rank: 8Rank: 8

积分
7789
跳转到指定楼层
楼主
发表于 2018-2-14 08:16:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            PHP substr()函数可以 分割文字,但要分割的文字如果包括中文字符往往会遇到问题,这时可以用mb_substr()/mb_strcut这个函数,mb_substr() /mb_strcut的用法与substr()相似,只是在mb_substr()/mb_strcut最后要加入多一个参数,以设定字符串的编码,但是 一般的服务器都没打开php_mbstring.dll,需要在php.ini在把php_mbstring.dll打开。
举个例子:
[U]复制代码[/U] 代码如下:
输出:这样一来我的字
[U]复制代码[/U] 代码如下:
输出:这样一
从上面的例子可以看出,mb_substr是按字来切分字符,而mb_strcut是按字节来切分字符,但是都不会产生半个字符的现象……
mbstring 函数的说明:
php的mbstring扩展模块提供了多字节字符的处理能力,平常最常用的就是用mbstring来切分多字节的中文字符,这样可以避免出现半个字符的情况,由于是php的扩展,它的性能也要比一些自定义的多字节切分函数要好上一些。
mbstring extension提供了几个功能类似的函数,mb_substr和mb_strcut,看看手册上对它们的解释。
[U]复制代码[/U] 代码如下:
mb_substr
mb_substr() returns the portion of str specified by the start and length parameters.
mb_substr() performs multi-byte safe substr() operation based on number of characters. Position is counted from the beginning of str. First character's position is 0. Second character position is 1, and so on.
mb_strcut
mb_strcut() returns the portion of str specified by the start and length parameters.
mb_strcut() performs equivalent operation as mb_substr() with different method. If start position is multi-byte character's second byte or larger, it starts from first byte of multi-byte character.
It subtracts string from str that is shorter than length AND character that is not part of multi-byte string or not being middle of shift sequence.
再举个例子,有一段文字, 分别用mb_substr和mb_strcut来做切分:
PLAIN TEXT
CODE:
[U]复制代码[/U] 代码如下:
输出结果如下:
mb_substr:我是一串比较
mb_strcut:我是
            
            
您可能感兴趣的文章:
  • PHP的substr_replace将指定两位置之间的字符替换为*号
  • PHP中文处理 中文字符串截取(mb_substr)和获取中文字符串字数
  • PHP substr 截取字符串出现乱码问题解决方法[utf8与gb2312]
  • php mb_substr()函数截取中文字符串应用示例
  • php中strstr、strrchr、substr、stristr四个函数的区别总结
  • php字符串函数学习之substr()
  • php使用substr()和strpos()联合查找字符串中某一特定字符的方法
  • PHP中使用substr()截取字符串出现中文乱码问题该怎么办
  • 谈谈PHP中substr和substring的正确用法及相关参数的介绍
  • PHP中substr函数字符串截取用法分析
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端