首先下載下面這個文件(這是一段是別人寫出來專門解析json的代碼),然後引入這個文件!
http://pan.baidu.com/s/1dD8qVr7
現在當我們需要用ajax與後台進行交互時,怎樣將php的數組傳送到js文件並且並js所識別?
先看php文件,當我們獲取到$arr這個數組後
foreach ($arr as $value) { $json .= json_encode($value) . ','; } echo '[' . substr($json,0,strlen($json) - 1) . ']';
json_encode()是將$arr的每一個值進行json編碼,然後我們想輸出一個json的數組,所以我們將每個編譯後的值後面加一個逗號並且最後在所有值外面加上'[]',這是json數組的格式,注意因為我們在將每一個值進行json編碼後都加上一個逗號在後面,這樣就導致最後所有值合並數組時多一個逗號,所有我們得用substr()函數將其最後一個逗號去掉!
然後我們來看js文件
當我們用arr接受到php文件傳輸的json數組後
var json = JSON.parse(arr);
JSON是咱們開始下載那個文件中定義的一個對象,我們用它的parse方法將json數組轉化成js的數組!這是變量json接受到的是一個js數組所以直接不能打印出來,你可以遍歷這個json數組或者json[0]來輸出!
其實,說白了咱們將php數組轉化成js數組的思路就是利用json這個中間量來實現!當然你也可以只用php和js來實現數組的轉化,方法不止一種!
轉載請注明出處:http://www.ly89.cn/detailB/44.html