2012-04-13 50 views
0

似乎我的舊服務器,這將返回NULL或錯誤...新的服務器返回值,怪異的。json_decode認爲一個正常的字符串是有效的

var_dump(json_decode("this is a normal string, not JSON")); 

輸出:

string(33) "this is a normal string, not JSON"

預計:

NULL

+0

你是對的,它應該返回'null'(快速測試http://writecodeonline.com/php/)。你在某個地方犯了一個愚蠢的錯誤嗎?像傳入'「\」這是一個正常的字符串,而不是JSON \「」'? – Halcyon 2012-04-13 22:07:55

+1

無法重現,此處返回'null'。但是,我在codepad.org上測試了它,並在那裏返回字符串。我使用5.3.6。也許更新有幫助 – KingCrunch 2012-04-13 22:08:28

+0

什麼PHP版本是在非工作服務器上?我在手冊頁上閱讀過,參考5.2.6的[this comment](http://www.php.net/manual/en/function.json-decode.php#98971)看起來與你的相似嗎? IIRC 5.2.X有一些錯誤版本,可能是這樣嗎? – 2012-04-13 22:12:10

回答

0

你還沒有真正制定一個問題,但我儘量嘗試回答這個問題:

每軟件包含錯誤。這很正常。我們共享代碼,我們分享這些錯誤。你問的是PHP中的reported and fixed軟件漏洞。升級您的PHP版本或與錯誤一起生活。