php – Json_encode,json_decode和UTF8
所有,
我使用PHP向Web服务器发出JSON请求,它在变量中返回一个JSON响应. JSON响应将包含许多键和值.我从服务器获得的JSON响应中包含特殊字符.因此,我使用以下语句将其转换为UTF8,解码JSON并将其用作数组以显示到UI. $response = json_decode(utf8_encode($jsonresponse)); 现在,我必须在JSON请求中将相同的值传递给服务器以执行某些操作.但是,当我通过 $jsonrequest = json_encode(utf8_encode($request)); 到服务器,它失败了. 以下代码成功读取特殊字符并将其显示到UI.但如果我必须将utf8_encode值传递给服务器,则会失败. 当前的整个往返代码如下: $requestdata = json_encode($request); $jsonresponse = //Do something to get from server; $response = json_decode(utf8_encode($jsonresponse)); 我怎样才能修改它,以便传递确切的值来表示我从服务器的json响应中收到的内容? 解决方法
JSON数据已经以UTF-8编码.你不应该再把它转换成UTF-8;你会破坏数据. 而不是这个: $response = json_decode(utf8_encode($jsonresponse)); 你应该这样: $response = json_decode($jsonresponse); //already UTF-8! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |