Pet*_*ler 6 php string parsing multibyte
我想编写一个基于状态机的(HTML)解析器,但我怀疑如何实际读取/使用输入.我决定将整个输入加载到一个字符串中,然后像使用数组一样处理它并将其索引保持为当前解析位置.
单字节编码没有问题,但在多字节编码中,每个值不代表字符,而是字符的字节.
例:
$mb_string = 'žš??'; //4 multi-byte characters in UTF-8
for($i=0; $i < 4; $i++)
{
echo $mb_string[$i], PHP_EOL;
}
Run Code Online (Sandbox Code Playgroud)
输出:
?
ž
?
?
Run Code Online (Sandbox Code Playgroud)
这意味着我不能在循环中遍历字符串以检查单个字符,因为我永远不知道我是否在角色的中间.
所以问题是:
http://php.net/mb_string就是您要找的东西
| 归档时间: |
|
| 查看次数: |
5190 次 |
| 最近记录: |