$str = "I want to eat我要吃飯 , you?你呢?";
我想要输出:
array(
0 => I,
1 => want,
2 => to,
3 => eat,
4 => 我,
5 => 要,
6 => 吃,
... ...
);
我试过了 :
1
function mb_str_split($str, $length = 1) {
if ($length < 1) return FALSE;
$result = array();
for ($i = 0; $i < mb_strlen($str); $i += $length) {
$result[] = mb_substr($str, $i, $length);
}
return $result;
}
var_dump(mb_str_split($str, 3));
上述方法仅适用于所有字符串均为繁体中文的情况。
2
preg_match("/\p{Han}+/u", $str, $matches);
以上方法只返回中文的第一个字符串,即我吃饭要。如何得到所有(我要吃饭,你呢)?
全部使用 UTF8。
如何达到我想要的输出?