php json_encode中提示的中文總是返回"\u767b\u5f55\u6210\u529f\uff01"的解決辦法


最近在練習使用 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}}

下面是我寫的:

$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);
    }

之前在測試時,一直顯示這個個?

通過網上查資料並交通,得知 php5.4 Json新增了一個選項: JSON_UNESCAPED_UNICODE, 故名思議, 就是說, Json不要編碼Unicode.

我們只要在 json_encode(array(),JSON_UNESCAPED_UNICODE),就可以將代碼中的中文正常輸出:

$json = json_encode(array(
            "resultCode"=>200,
            "message"=>"登錄成功!",
            "data"=>$array
        ),JSON_UNESCAPED_UNICODE);
        echo($json);

看測試效果:

就是這幾個單詞不好拼!!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM