【发布时间】:2014-04-30 17:31:20
【问题描述】:
远程 SMS 服务(我无法影响)将文本消息以 Content-Type: application/x-www-form-urlencoded 的形式发布到 PHP 控制器(如果重要,则属于 Symfony2 应用程序)
PHP 无法正确解码特殊字符。
tcpdump 显示(缩写 - 仅显示有问题的数据)
User-Agent: smsd (libwww-perl/5.805)
Content-Type: application/x-www-form-urlencoded
Content-Length: 123
data=ae+%E4+ue+%FC+oe+%F6+sz+%DF
原来的数据是
ae ä ue ü oe ö sz ß
并且 PHP $_POST 持有(序列化)
;s:4:"data";s:19:"ae ###e ###### sz ##;
我想,是缺少 charset=UTF-8 造成了麻烦。
如果有人知道如何克服这个问题,我会很感激你的回答。谢谢。
【问题讨论】:
-
为什么要序列化?
-
我认为他这样做是为了向我们展示原始内容。