4
<input type="text" id="title" name="title" size="50" maxlength="110" />

你看,maxlength是110,但是当我使用的时候发现输入了114个字符我惊呆了

echo strlen($title);

任何想法?

顺便说一句,我输入的是日文。怎么了?

4

3 回答 3

13

日文文本很可能使用多字节字符编码。因此,您应该使用mb_strlen()

最好的祝愿,法比安

于 2009-12-05T16:09:32.217 回答
5

怎么了?

PHP 的字符串处理,它基于 1 个字符 = 1 个字节的假设,并将其留给程序员来处理任何地方的编码,并记住在处理可能使用多字节编码的字符串时使用更新的 mb_* 函数。

于 2009-12-05T16:28:23.063 回答
-2

maxlength 只是一个浏览器锁,但它可以通过任何方式绕过,包括通过 unicode 编码。您最好为此提供服务器端控件

于 2009-12-05T18:00:49.443 回答