我尝试这样做:
pry(main)> n = Number.new(1)
=> <<1>>
但是当涉及不符合1个字节的字符时似乎是错误的。例如,strlen(“ää”)返回4表示它们由2个字节组成。
如何浏览php中的每个角色?
答案 0 :(得分:5)
该代码循环遍历字符串中的字节,而不是字符 ....使用mb_*函数处理多字节字符串
for ($i = 0; $i < mb_strlen($s); $i++) {
$char = mb_substr($s, $i, 1);
...
}
答案 1 :(得分:0)
使用带有preg_split
(utf-8)修饰符的/u
函数获取多字节字符集的简单单行“技巧”:
$str = "äänä";
$chars = preg_split("//u", $str, 0, PREG_SPLIT_NO_EMPTY);
print_r($chars);
输出:
Array
(
[0] => ä
[1] => ä
[2] => n
[3] => ä
)