网站地图    收藏   

主页 > php专栏 > php应用 >

mb_substr中文的截取小知识 - php高级应用

来源:自学PHP网    时间:2014-11-27 22:16 作者: 阅读:

[导读] mb_substr函数是substr函数的升级版,mb_substr支持中文截取并且不会出现乱码问题,下面我来介绍一下mb_substr基础知识.例,代码如下:?php$str=lsquo;这样一来我的字符串就不会有乱码^_^rsquo;;ech......

mb_substr中文的截取小知识

mb_substr函数是substr函数的升级版,mb_substr支持中文截取并且不会出现乱码问题,下面我来介绍一下mb_substr基础知识.

例,代码如下:

  1. <?php 
  2. $str = ‘这样一来我的字符串就不会有乱码^_^’; 
  3. echo “mb_substr:” . mb_substr($str, 0, 7, ‘utf-8′); 
  4. //结果:这样一来我的字 
  5. echo “<br>”; 
  6. echo “mb_strcut:” . mb_strcut($str, 0, 6, ‘utf-8′); 
  7. //结果:这样 
  8. ?> 

从上面的例子可以看出,mb_substr是按字来切分字符,而mb_strcut是按字节来切分字符,但是都不会产生半个字符的现象.

在实际使用过程中需要和mb_strlen配合使用,mb_strlen的使用方法和strlen类似,只是多了一个编码参数:mb_strlen("我是要被计算长度的字符","gbk");结果是11.

详细的使用例子,比如字符串超过20个就需要截取,代码如下:

  1. if(mb_strlen($str"gbk") >20) 
  2.  
  3.  
  4.   $str = mb_substr($str, 0, 20, "gbk"); 
  5.  

注意:确保你的Windows/system32下有php_mbstring.dll这个文件,没有就从你Php安装目录extensions里拷入Windows/system32里面.

2.在windows目录下找到php.ini打开编辑,搜索mbstring.dll,找到 ;extension=php_mbstring.dll把前面的;号去掉,这样mb_substr函数就可以生效了.

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论