javascript - php json_encode中提示的中文总是返回"\u767b\u5f55\u6210\u529f\uff01"
天蓬老师
天蓬老师 2017-04-11 13:10:54
0
5
961

最近在练习使用 php 写一些简单的接口,但是在返回的消息中,如果有中文,在测试后总是返回:

{"resultCode":200,"message":"\u767b\u5f55\u6210\u529f\uff01","data":{"user_id":"29","user_phone":"13918145846","user_name":null,"user_sex":null,"user_password":"123456","user_header":null}}
"message":"\u767b\u5f55\u6210\u529f\uff01", 其实这个地方返回的是类似“注册失败”才正确? 请问我该怎么解决?谢谢!

下面是我写的:

$row = mysql_num_rows($result); if($row == 1){ $array = array(); while($row = mysql_fetch_array($result)){ $array["user_id"] = $row["user_id"]; $array["user_phone"] = $row["user_phone"]; $array["user_name"] = $row["user_name"]; $array["user_sex"] = $row["user_sex"]; $array["user_password"] = $row["user_password"]; $array["user_header"] = $row["user_header"]; } //把上面的数组以 json 格式返回 $json = json_encode(array( "resultCode"=>200, "message"=>"登录成功!", "data"=>$array )); echo($json); }else{ $json = json_encode(array( "resultCode"=>500, "message"=>"登录失败!" )); echo($json); }

我在网上查到有类似解决办法:

$json = json_encode($str); return preg_replace("#\\\u([0-9a-f]+)#ie","iconv('UCS-2','UTF-8', pack('H4', '\\1'))",$json);

但是我觉得这些代码有些看不懂,有没有更好的办法解决呢?据说上面的方法对于低版本的 php 还是没有效果的。有没有什么办法可以通用的呢?

非常感谢!

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

모든 응답 (5)
左手右手慢动作
echo json_encode(array( "resultCode"=>500, "message"=>"登录失败!" ), JSON_UNESCAPED_UNICODE);
    小葫芦

    json_encode之后的中文显示这种格式没问题。正常情况下对方取数据的时候json_decode一下就行了,直接可以读出中文。如果是javascript中直接data.message直接就可以拿到中文汉字,不需要为这个发愁。

      阿神

      这是正常的啊?这是json,json_decode预览模式就显示文本了

        迷茫

        json encode decode有字符编码要求 utf8格式就ok了
        具体参见 http://onwise.xyz/2016/08/01/...

          左手右手慢动作

          中文字符在json_encode之后,默认是会对其编码的,也就是你看到的情况,
          在PHP5.4之后,第二个options参数支持JSON_UNESCAPED_UNICODE,这样就可以返回原中文字符串了。
          不过其实这个没有必要,被unicode编码的中文不影响接口的解析,无论是PHP的json_decode还是在其他客户端(如:浏览器JS、AJAX)都能被正常解析出来。
          如果只是自己测试接口返回,可以通过浏览器的“开发者工具F12”中的-Network(网络),然后选择请求接口的记录并切换到Preview选项卡,这样就能看到中文结果并且自动给你以Tree的形式显示了

            최신 다운로드
            더>
            웹 효과
            웹사이트 소스 코드
            웹사이트 자료
            프론트엔드 템플릿
            회사 소개 부인 성명 Sitemap
            PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!