zoukankan      html  css  js  c++  java
  • php 中文字符串截取子串

    本函数可能理论上说有些不地道,把utf-8的中文字符和char一视同仁,都按长度为1计算

    function string_substring($string,$start,$length) 
    { 
        $countstart=0; 
        $countlength=0; 
        $printstring=""; 
        for($i=0;$i<strlen($string);$i++) 
        { 
            while($countstart<$start) 
            { 
                $countstart++; 
                if(ord(substr($string,$i,1))>128) 
                { 
                    $i+=3; 
                } 
                else
                { 
                    $i++; 
                } 
            } 
            while($countlength<$length) 
            { 
                $countlength++; 
                if(ord(substr($string,$i,1))>128) 
                { 
                    $printstring.=substr($string,$i,3); 
                    $i+=3; 
                } 
                else
                { 
                    $printstring.=substr($string,$i,1); 
                    $i++; 
                } 
            } 
        } 
        return $printstring; 
    }
    

    示例:

    echo string_substring(">>我是A一个兵",1,4);

    显示:

    >我是A

  • 相关阅读:
    洛谷 P1981 表达式求值
    1696:逆波兰表达式
    C# winform选择文件、选择文件夹、打开文件
    建立二叉树的二叉链表存储结构(严6.70)
    二叉树的深度
    Sequence
    c++优先队列(priority_queue)用法详解
    二叉树的操作
    [清华集训2015]灯泡(浙江大学ZOJ 3203 Light Bulb)
    Go 和 Colly笔记
  • 原文地址:https://www.cnblogs.com/frostbelt/p/2388750.html
Copyright © 2011-2022 走看看