我正在尝试拆分utf8将字符串编码为字符数组。我现在使用的功能曾经可以工作,但由于某种原因它不再工作了。可能是什么原因。更好的是,我该如何解决它?
这是我的字符串:
Zelf heb ik maar één vraag:wie ben jij?
这是我的功能:
function utf8Split($str, $len = 1)
{
$arr = array();
$strLen = mb_strlen($str);
for ($i = 0; $i < $strLen; $i++)
{
$arr[] = mb_substr($str, $i, $len);
}
return $arr;
}
这是结果:
Array
(
[0] => Z
[1] => e
[2] => l
[3] => f
[4] =>
[5] => h
[6] => e
[7] => b
[8] =>
[9] => i
[10] => k
[11] =>
[12] => m
[13] => a
[14] => a
[15] => r
[16] =>
[17] => e
[18] => ́
[19] => e
[20] => ́
[21] => n
[22] =>
[23] => v
[24] => r
[25] => a
[26] => a
[27] => g
[28] => :
[29] =>
[30] => w
[31] => i
[32] => e
[33] =>
[34] => b
[35] => e
[36] => n
[37] =>
[38] => j
[39] => i
[40] => j
[41] => ?
)
这是最好的解决方案!:
我在中找到了这个不错的解决方案PHP 手册页.
preg_split('//u', $str, -1, PREG_SPLIT_NO_EMPTY);
它的工作速度非常快:
在 PHP 5.6.18 中,它可以在几秒钟内分割一个 6 MB 的大文本文件。
最好的。它不需要多字节(mb_)支持!
类似的答案还有here.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)