如何解决UTF-8 字符的 php $_POST 正在转换为 CP1251
我正在使用以下代码将法语字符发布到 php 页面(这是一个超级简化的测试用例)
ConnectionRequest r = new ConnectionRequest() {
...
};
r.setUrl(GLOBALS.BASEURL + "/login.php");
r.setPost(true);
r.addArgument("test","Léçon");
NetworkManager.getInstance().addToQueueAndWait(r);
这会向服务器创建以下帖子:
Post Body:
test=L%C3%A9%C3%A7on
Post Headers:
cookie=[PHPSESSID=eo07gkat0fsmpjksmg30qkk162]
User-Agent=[Mozilla/5.0 (iPod; U; CPU iPhone OS 4_3_3 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML,like Gecko) Version/5.0.2 Mobile/8J2 Safari/6533.18.5]
Content-Type=[application/x-www-form-urlencoded; charset=UTF-8]
然而,当我得到 $_POST 变量时,它似乎是用 CP1251 编码的
<?php
session_start();
error_log("FINDME all vars:" . print_r($_POST,true));
在错误日志中产生以下内容(看起来像 CP1251):
[Sun Dec 20 ...] FINDME all vars:Array\n(\n [test] => L\xc3\xa9\xc3\xa7on\n)\n
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。