+ -

完美截取子字符串,支持中文

时间:2007-02-18

来源:PHP爱好者

在手机上看
手机扫描阅读
CODE:
[复制到剪切板]
<?php
//截取子字符串,支持中文
//每个中文汉字看成一个字符
//echo string_substring("1A辽2B宁3C省4D抚5E顺6F市7G新8H宾9I县",4,5);
//会返回B宁3C省,位置从0开始
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+=2;
            }
            else
            {
                $i++;
            }
        }
        while($countlength!=$length)
        {
            $countlength++;
            if(ord(substr($string,$i,1))>128)
            {
                $printstring.=substr($string,$i,2);
                $i+=2;
            }
            else
            {
                $printstring.=substr($string,$i,1);
                $i++;
            }
        }
    }
    return $printstring;
}
echo string_substring("1A辽2B宁3C省4D抚5E顺6F市7G新8H宾9I县",4,5);
?>  php爱好者站 http://www.phpfans.net 网页特效|网页模板