Mau*_*oon 3 php string character-encoding
我已经尝试了很多功能,但我根本无法解决这个问题.无论如何,正确的方式.
在名为description的表单字段中,我可以期待各种字符.这些需要在提交给数据库之前格式化为HTML实体.
现在,我的代码:
$formdesc = htmlentities($_POST['formdesc'], ENT_QUOTES);
Run Code Online (Sandbox Code Playgroud)
对于MySQL查询,我只需添加一个"安全"函数来削减'off the string:
mysql_real_escape_string($formdesc);
Run Code Online (Sandbox Code Playgroud)
但是,这有时不起作用.例如,"é"变成了é而不是é.
必须有一个正常的功能.有谁知道我的意思?
Gum*_*mbo 13
您需要指定htmlentities函数的编码(此处为UTF-8):
$formdesc = htmlentities($_POST['formdesc'], ENT_QUOTES, 'UTF-8');
Run Code Online (Sandbox Code Playgroud)
否则使用默认值ISO-8859-1,并且é以UTF-8编码为0xC3A9的示例中的字符将被解释为两个字符(Ã和©).
但是你为什么htmlentities还要用?如果你只是想逃避的HTML特殊字符,例如&,<,>,"和' htmlspecialchars就足够了.
| 归档时间: |
|
| 查看次数: |
15773 次 |
| 最近记录: |