【发布时间】:2012-06-29 09:25:47
【问题描述】:
我的表中有一个类型为TINYTEXT 的字段。该字段的编码为UTF8-UNICODE-ci。如果中国人在该字段中输入内容,则限制为 88 个字符,但如果伊朗人在波斯语中输入内容,则限制为 135 个字符,依此类推。所以最大文本长度根据 unicode 变化。如何克服这种情况并有一个基于特定语言的单词计数器?
有办法吗?我找不到它的方法;(
P.S.:我已经阅读了整个 jQuery APIs,但在 PHP 中找不到类似 mb_strlen() 的东西。
【问题讨论】:
-
如果您切换到 UTF-16,您将获得所有语言的 128 个字符,否则您可以计算文本的字符和字节数(我猜 jquery 可以做到这一点,例如 phps strlen 和 mb_strlen),并且计算平均字节/字符,然后计算剩余字节数/(平均字节/字符)
-
问题在于 UTF-16 仅在 MySQL 5.5 和 5.6 中可用