淡淡烟草味 2017-05-16 13:05:33 0 2 823
[PHP讨论组] 举报 回复话题 ↕
php的curl返回string(42) "{"ret":1,"msg":"u6b22u8fceu56deu6765"}",想知道该怎样显示正确的文字? "u6b22u8fceu56deu6765"对应的是"欢迎回来"
2
0
分享
ringa_lee 采纳为最佳 2017-05-16 13:07:33 2楼
如果能处理服务端那可以通过json_encode第二个参数控制中文不编码。http://php.net/manual/zh/func...不能处理服务端那么可以处理curl返回的结果,先解json,再重新json_encode(也根据第二个参数控制)
赞 +0 添加回复
漂亮男人 采纳为最佳 2017-05-16 13:07:33 1楼
答主还是讲得不够详细,菜鸟就只能在网上慢慢搜索啦...找到一篇完美的解决方法:
<?php $arr = array('p1'=>'nihao','p2'=>2,'ch'=>'码农你好!'); $json = json_encode($arr); echo decodeUnicode($json); function decodeUnicode($str){ return preg_replace_callback('/\\\\u([0-9a-f]{4})/i', create_function( '$matches', 'return mb_convert_encoding(pack("H*", $matches[1]), "UTF-8", "UCS-2BE");' ), $str); } ?>
参考:http://www.manongjc.com/artic...
ringa_lee 采纳为最佳 2017-05-16 13:07:33 2楼
如果能处理服务端那可以通过json_encode第二个参数控制中文不编码。
http://php.net/manual/zh/func...
不能处理服务端那么可以处理curl返回的结果,先解json,再重新json_encode(也根据第二个参数控制)
赞 +0 添加回复
漂亮男人 采纳为最佳 2017-05-16 13:07:33 1楼
答主还是讲得不够详细,菜鸟就只能在网上慢慢搜索啦...找到一篇完美的解决方法:
参考:http://www.manongjc.com/artic...
赞 +0 添加回复