有些小夥伴會想著把環境變數變成json保存下來,但最後卻發現什麼內容都沒,細心觀察會發現檔案大了1個位元組。 json_encode($GLOBALS)會回傳false,原因如下:
循環遞迴。列印$GLOBALS,在最後一個屬性可以看到:
*RECURSION*,當你嘗試取得就會發現,它只不過是不斷的遞歸調用自身:
$GLOBALS['GLOBALS']['GLOBALS']['GLOBALS']['GLOBALS']==$GLOBALS:
解決方法很簡單:
完美輸出!
以上是PHP json_encode($GLOBALS)出錯的原因的詳細內容。更多資訊請關注PHP中文網其他相關文章!