当前位置:  编程技术>移动开发 iis7站长之家

支持中文和其他编码的php截取字符串函数分享(截取中文字符串)

    来源: 互联网  发布时间:2014-08-26

    本文导语:  简单的字符串截取方法,支持中文和其他编码,传入相对应的参数直接调用就可以了 代码如下:/** * 字符串截取,支持中文和其他编码 * @static * @access public * @param string $str 需要转换的字符串 * @param string $start 开始位置 * @pa...

简单的字符串截取方法,支持中文和其他编码,传入相对应的参数直接调用就可以了

代码如下:

/**
 * 字符串截取,支持中文和其他编码
 * @static
 * @access public
 * @param string $str 需要转换的字符串
 * @param string $start 开始位置
 * @param string $length 截取长度
 * @param string $charset 编码格式
 * @param string $suffix 截断显示字符
 * @return string
 */
function msubstr($str, $start=0, $length, $charset="utf-8", $suffix=true) {
    if(function_exists("mb_substr"))
        $slice = mb_substr($str, $start, $length, $charset);
    elseif(function_exists('iconv_substr')) {
        $slice = iconv_substr($str,$start,$length,$charset);
        if(false === $slice) {
            $slice = '';
        }
    }else{
        $re['utf-8']   = "/[x01-x7f]|[xc2-xdf][x80-xbf]|[xe0-xef][x80-xbf]{2}|[xf0-xff][x80-xbf]{3}/";
        $re['gb2312'] = "/[x01-x7f]|[xb0-xf7][xa0-xfe]/";
        $re['gbk']    = "/[x01-x7f]|[x81-xfe][x40-xfe]/";
        $re['big5']   = "/[x01-x7f]|[x81-xfe]([x40-x7e]|xa1-xfe])/";
        preg_match_all($re[$charset], $str, $match);
        $slice = join("",array_slice($match[0], $start, $length));
    }
    return $suffix ? $slice.'...' : $slice;
}

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • RedHat 7.1英文版怎么样通过外挂支持中文?只要求支持......
  • linux要想使用中文输入法是不是要安装中文支持才可以?
  • kawa 不能输入中文?对中文支持很差。
  • 我的rh linux 8 不支持中文,中文显示乱码,该安装什么?或怎么解决?
  • 在shell下如何支持中文?输入中文?
  • redhat7.3用root登陆kde支持中文文件名,用其他帐号登陆就不支持?
  • 只想让Red hat Linux7.1支持中文和中文输入,而不想让桌面都变成汉字,怎么办?
  • 如果VI不支持中文,能不能写出输出中文的程序?
  • 如何使没有中文支持的Redhat7.3能显示中文?在线等待,急用
  • turbolinux10中原来是英文操作系统,现在想变成支持中文,请问有什么好方法,如果能通过增加中文包来解决,请提供一点详细的资料。
  • 请问小红帽支持中文的c,c++,数据库,阿帕奇等编程吗?
  • 英文FC4下如何提供中文支持
  • linux kernel 2.6.18 怎么支持中文?
  • G++如何支持中文?程序中包含GB2312的串!
  • 命令行不支持中文的问题
  • FC4中如何使得终端支持中文?
  • 哪一款对中文支持好?
  • jspsmartupload 不支持中文文件名的上传
  • OO Word是不是不支持中文啊?
  • 为什么在我的renhat7.3中不支持中文文件命?
  • Docker支持的安装方式
  • php for linux安装既不支持mysql.如何配置支持mysql
  • Ubuntu 12.04长期支持版和最新版Ubuntu 13.10下载
  • 在red hat 9.0.1支持u盘吗,支持如何驱动呀?谢了先。
  • Docker宣布支持Windows 10和Azure Windows Server
  • 到底有哪些网站支持JSP???163.com的免费空间支持吗?
  • windows10玩游戏怎么样?唯一支持DirectX 12的windows
  • 急急急,2.4.20的内核不支持pci-e,请问如何才能使其支持?
  • Docker支持更深入的容器日志分析
  • JBuilder4 能支持 Weblogic 6.0吗?怎麽支持?
  • ​Windows Server 2016提供Docker原生运行的企业级支持


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3