我使用WordPress和JSON API插件(http://wordpress.org/extend/plugins/json-api/)來生成對我們其他網站的響應。使用json_encode的奇怪JSON編碼
我已經打了一個很奇怪的問題(我們使用PHP 5.3.6),當我通過以下陣列http://pastebin.com/xdfYjrvK到json_encode()它給了我這個(JSON的內容類型):http://pastebin.com/T61XGPP5
所以最開始的廢話,在上面的例子中它是2609和0到底,它根據響應的大小而變化,更多的內容 - >更高的十六進制數。它也僅在響應數量「足夠高」時出現,所以它在小響應時起作用。首先我認爲它是插件,但它在本地工作(在兩臺不同的Mac OS X機器上),我們已經將VPS(Debian,Apache,Nginx,PHP)上的所有軟件包更新到最新版本。
$charset = get_option('blog_charset');
if (!headers_sent()) {
header('HTTP/1.1 200 OK', true);
header("Content-Type: application/json; charset=$charset", true);
}
echo $result;
$字符集設置爲UTF-8:
發送內容類型時,用純文本,而不是應用程序/ JSON輸出$結果不是當它纔會顯示。
Google chrome控制檯顯示:「資源解釋爲Document,但是使用MIME類型application/json傳輸。」
那麼,有沒有人有線索最新發生在這裏?
$ result初始化在哪裏?它是一個json_encode-d值嗎? 。 –
是的,它來自另一個函數,它與內置在json_encoding照顧 –