簡體   English   中英

`json_encode不返回UTF8字符

[英]`json_encode does not return a UTF8 character

我有一個AJAX請求發送到PHP服務器,PHP將帶有json_encode的數組返回給客戶端。

該數組是一個簡單的2索引數組。

我從console.log()得到的是這樣的:

{"1":"\u00d9\u0081\u00db\u008c\u00d9\u0084\u00d8\u00af title \u00d9\u0086\u00d8\u00a8\u00d8\u00a7\u00db\u008c\u00d8\u00af \u00d8\u00ae\u00d8\u00a7\u00d9\u0084\u00db\u008c \u00d8\u00a8\u00d8\u00a7\u00d8\u00b4\u00d8\u00af.","0":"FAIL"}

我認為這是ASCII charset 我不知道,但我知道這不是波斯字符!

這是我的PHP代碼:

header ('Content-type: text/html; charset=utf-8');
            $message = $validator->messages();
            $response[1] = utf8_encode($message->first());
            $response[0] = FAIL;
            echo json_encode(($response));

雖然當我將響應設置為僅回顯$message->first()不是json object ,這是可以的並且完全utf-8

我認為您的問題是您的PHP聲明了text/html而不是application/json的內容類型。 如果更改類型,它將告訴瀏覽器應該將內容解析為JSON,並且您將在AJAX處理程序中獲得一個對象。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM