引言
虛頭巴腦的大道理就不講了,直接上代碼。
我們說一下把PHP嵌套的數組,轉換為JSON字符串,提供給JS前端用。
基本面
使用json_encode函數將PHP數組傳遞給JSON字符串和JavaScript數組。在本文,我們使用多維數組進行演示。一個數組
無論PHP數組是單級的還是多級的,或者是數字索引的還是關聯索引的,下面的代碼放在一個JavaScript段中,將會輸出到JavaScript:
你可能希望使用JavaScript的JSON。解析來處理PHP的json_encode的結果,在這種情況下,使用以下代碼:
對于下面的示例數組,首先用PHP顯示該數組,然后包括用于輸出它的json_encode的JavaScript段,然后顯示輸出。最后展示在JavaScript中用于訪問結果數組元素或對象屬性的語法。
示例數組1
默認情況下,json_encode將數字索引的PHP數組輸出為JavaScript中的數組文本。關聯的PHP數組作為對象文本輸出。
示例數組2
在json_encode輸出中,外層是數組文字,而第二層形成對象文字。下面的代碼注釋演示了如何使用JSON_PRETTY_PRINT選項和json_encode實現更可讀的輸出:
更復雜的數組結構
這個例子演示了如何使用JSON。解析json_encode的輸出。PHP標記為此用單引號括起來。
訪問方式可以是索引鍵,可以是數字。
我們不能在JSON.parse中使用JSON_PRETTY_PRINT,因為那會導致JavaScript錯誤:未終止的字符串文字。
寫在最后
本文通過深度對比PHP的數組,與JS的JSON對象之間的數值轉換,可以較為清晰地掌握關鍵點,而不至于頻頻踩坑。
Happycoding:)
我是@程序員小助手,持續分享編程知識,。