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
浙公网安备 33010602011771号