php – 可以在HTML“name”属性中使用非西方字符吗?

HTML< input>中:

是否有义务使用英文字符设置name属性

我想稍后在$_POST [‘some_utf8_characters_and_not_english_characters’]中使用它.

以后可能会引起问题吗?

解决方法:

根据RFC1866第3.2.4章,属性的值可以是除值分隔符(单引号或双引号)之外的任何值,并且不应包含HTML标记分隔符(<和>).

但是,当您尝试使用name作为引用访问DOM元素时,您将必须测试JavaScript在所有浏览器上的行为(记住您的好朋友MSIE …).例如:document.anElementWithPersianName或document.forms [‘aFormWithAPersianName’].因此,如果您使用JS进行验证,并且/或者使用ajax来提交表单,则需要确保JS能够正确处理此字符集.

无论如何,你必须确保:

>当你的PHP脚本涉及字符串操作时,你的PHP脚本使用基于UTF-8的函数(我认为某些函数需要将charset作为参数传递)
>这些脚本本身保存在UTF-8文件
>您在HTML标头和/或PHP的响应标头中正确设置了字符集

最好的办法:创建一个简单的表单,在其上做一些JS技巧,并使用PHP脚本解析提交的结果并打印它们.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...