【发布时间】:2011-11-02 10:55:21
【问题描述】:
假设用户提交评论,我想获取其值的 Unicode 代码点数组,选择哪些代码点无效并丢弃它们,并保存评论。 我该怎么做?
例如
用户提交“hello”,我想获取一个数组$codepoints,其值如下:
$codepoints[0] = 0068
$codepoints[1] = 0065
$codepoints[2] = 006C
$codepoints[3] = 006C
$codepoints[4] = 006F
而且,出于某种奇怪的原因,我不想允许字母“l”,所以我想丢弃代码点为 U+006C 的字符。所以保存的评论将是“heo”。 这甚至可能吗?
提前致谢!
【问题讨论】:
-
如果您安装了多字节,最好使用 mb_convert_encoding。代码点是解码 UTF-8 或 UTF-16LE/BE 后得到的。码点一般用 24 位整数表示,但大多数系统为了速度,使用 32 位整数来表示码点。字符可以是一个或多个代码点,具体取决于字形上的标记。
标签: php unicode internationalization sanitization