龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > python编程 >

Python和php通信乱码问题解决方法

时间:2014-05-13 02:13来源:网络整理 作者:网络 点击:
分享到:
Python是在windows下的客户端,用的是cp936编码,php用的是utf-8编码,如果单纯使用urllib.urlencode编码之后post发送的话,php接收过来的中文会是类似\xb0\xe1这种形式的编码
即使在urlencode之前str.decode(“cp936″).encode(“utf-8″)做了编码转换也是没用的。后来查询手册查到一个urllib.quote()函数,用此方法成功解决!
python端:
代码如下:

str = "中文"
str = urllib.quote(str.decode("cp936").encode("utf-8"))
postData = {}
postData['str'] = str
...post请求发送代码...

php端:
代码如下:

$str = urldecode($_POST['str'])
echo $str;

完美解决乱码问题!
精彩图集

赞助商链接