- var_dump: documentation ( source)
- mb_substr: documentation ( source)
- preg_match: documentation ( source)
<?php
function substr_utf8($string, $start, $length)
{
$chars = $string;
$i=0;
do {
if (preg_match ("/[0-9a-zA-Z]/", $chars[$i])){
$m++;
} else {
$n++;
}//非英文字节,
$k = $n/3 + $m/2;
$l = $n/3 + $m;
$i++;
} while ($k < $length);
$str1 = mb_substr($string,$start,$l,'utf-8');
return $str1;
}
$a = '测试这是一个测试';
$a = 'xxxxbbbbbnnn';
$b = substr_utf8($a,0,5);
var_dump($b);
?>