$_SERVER 变量的编码?
我需要知道我是否可以安全地使用普通字符串,或者在处理 $_SERVER
变量时必须使用 mb_*
字符串。 (UTF-8)
例如 $_SERVER['HTTP_HOST']
可以包含多字节字符吗?
如果我使用包含多字节字符的 Host: header
发出 http 请求,会发生什么?
客户端在发出 http 请求时可以在哪里指定使用哪个 econding?
I need to know if i can safely use normal string or I have to use mb_*
string when I work on $_SERVER
vars. (UTF-8)
For example $_SERVER['HTTP_HOST']
can contain multibyte chars?
What happens if i make an http request with Host: header
containing multybyte chars?
And where a client can specify which econding is using when he makes an http request?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
是的,您应该使用多字节。
如果不出意外的话,还有西里尔字母域名,所以
$_SERVER
自然应该包含 utf8 数据。Yes, you should use multibyte.
If not for anything else, there are cyrillic domain names, so
$_SERVER
should naturally include utf8 data.