在 PHP 中使用 UTF-8 字符串时,通过索引访问字符可能会产生意外结果,因为到多字节编码。问题的重点是在保持字符完整性的同时逐字符迭代 UTF-8 字符串的挑战。
为了克服使用括号运算符的限制,解决方案在于利用 preg_split。通过使用“u”修饰符,preg_split 支持 UTF-8 unicode 并实现字符的精确分割:
<code class="php">$str = "Kąt"; $chrArray = preg_split('//u', $str, -1, PREG_SPLIT_NO_EMPTY);</code>
这会产生以下字符数组:
["K", "ą", "t"]
通过利用 preg_split ,您可以有效地逐字符迭代 UTF-8 字符串,保留多字节字符的完整性并避免与 mb_substr 相关的性能损失。
以上是如何在 PHP 中逐字符迭代 UTF-8 字符串的详细内容。更多信息请关注PHP中文网其他相关文章!