您的位置:首页 > 编程语言 > PHP开发

php截取中英文混合字符串方法

2011-09-06 11:45 495 查看
function cut($Str, $Length)
{//$Str为截取字符串,$Length为需要截取的长度

global $s;

$i = 0;

$l = 0;

$ll = strlen($Str);

$s = $Str;

$f = true;

while ($i <= $ll) {

if (ord($Str{$i}) < 0x80) {

$l++; $i++;

} else if (ord($Str{$i}) < 0xe0) {

$l++; $i += 2;

} else if (ord($Str{$i}) < 0xf0) {

$l += 2; $i += 3;

} else if (ord($Str{$i}) < 0xf8) {

$l += 1; $i += 4;

} else if (ord($Str{$i}) < 0xfc) {

$l += 1; $i += 5;

} else if (ord($Str{$i}) < 0xfe) {

$l += 1; $i += 6;

}

if (($l >= $Length - 1) && $f) {

$s = substr($Str, 0, $i);

$f = false;

}

if (($l > $Length) && ($i < $ll)) {

$s = $s . '...'; break; //如果进行了截取,字符串末尾加省略符号“...”

}

}

return $s;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: