【发布时间】:2015-01-30 16:07:37
【问题描述】:
编码/解码在不同的服务器上工作不同。
在本地,我正在运行 PHP v5.6。 default_charset = UTF-8 根据 php_info()。
当我在 URL 中传递值 's 时,它在输入字段中正确显示为 's。
我的 Godaddy 服务器远程运行 PHP v5.3,default_charset = 根据 php_info() 没有值
当我在 URL 中传递 value 时,它在输入字段中错误地显示为 %27s。
我在 html 文件的头部添加了<meta http-equiv="content-type" content="text/html; charset=utf-8"></meta>。
有谁知道如何解决这个问题,以便's 在远程服务器上显示为's?
【问题讨论】:
-
这与字符集无关。这是一个正确的 uri 编码的 uri
-
我应该注意到,无论我是否通过 htmlspecialchars() 或任何其他编码或解码函数传递 ',我都会得到相同的结果。
-
htmlspecialchars 毫无意义。那是为了输出到 html 上下文中。您不是在输出到浏览器,而是在输出到控制台。你需要
mb_convert_encoding()