• 技术文章 >php教程 >PHP源码

    PHP 截取字符串专题

    2016-06-08 17:32:13原创595
    PHP 截取字符串专题
    作者: 不详 来源: 不详

    1. 截取GB2312中文字符串
    //截取中文字符串
    function mysubstr($str, $start, $len) {
    $tmpstr = "";
    $strlen = $start + $len;
    for($i = 0; $i < $strlen; $i++) {
    if(ord(substr($str, $i, 1)) > 0xa0) {
    $tmpstr .= substr($str, $i, 2);
    $i++;
    } else
    $tmpstr .= substr($str, $i, 1);
    }
    return $tmpstr;
    }
    ?>

    2. 截取utf8编码的多字节字符串
    //截取utf8字符串
    function utf8Substr($str, $from, $len)
    {
    return preg_replace(''#^(?:[x00-x7F]|[xC0-xFF][x80-xBF]+){0,''.$from.''}''.
    ''((?:[x00-x7F]|[xC0-xFF][x80-xBF]+){0,''.$len.''}).*#s'',
    ''$1'',$str);
    }
    ?>

    3. UTF-8、GB2312都支持的汉字截取函数
    /*
    Utf-8、gb2312都支持的汉字截取函数
    cut_str(字符串, 截取长度, 开始长度, 编码);
    编码默认为 utf-8
    开始长度默认为 0
    */

    function cut_str($string, $sublen, $start = 0, $code = ''UTF-8'')
    {
    if($code == ''UTF-8'')
    {
    $pa = "/[x01-x7f]|[xc2-xdf][x80-xbf]|xe0[xa0-xbf][x80-xbf]|[xe1-xef][x80-xbf][x80-xbf]|xf0[x90-xbf][x80-xbf][x80-xbf]|[xf1-xf7][x80-xbf][x80-xbf][x80-xbf]/";
    preg_match_all($pa, $string, $t_string);

    if(count($t_string[0]) - $start > $sublen) return join('''', array_slice($t_string[0], $start, $sublen))."...";
    return join('''',

    php入门到就业线上直播课:查看学习

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    前端(VUE)零基础到就业课程:点击学习

    清晰的学习路线+老师随时辅导答疑

    自己动手写 PHP MVC 框架:点击学习

    快速了解MVC架构、了解框架底层运行原理

    专题推荐:nbsp xBF string str quot
    上一篇:php中截取汉字,避免半个字节的问题 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• ❤️‍🔥接口自动化测试不想写代码?• PHP实现301跳转,及延时跳转代码• php 列出目录与删除目录实例代码• php 模拟用户抓取网页内容程序• PHP定义验证码图形大小函数• 高亮显示搜索结果代码
    1/1

    PHP中文网