2012-03-12 112 views
0

我想知道,我們該如何將JSON值重新格式化爲PHP變量?我們如何將JSON值格式化爲PHP變量

我們通過「JSONP」數據類型從基於JSON的腳本獲取URL。

http://localhost/kendo-prac/data/update.php?callback=jQuery17107827386485878378_1331380511887&models=%5B%7B%22ID%22%3A%2213%22%2C%22Title%22%3A%22RODDER%22%7D%5D&_=1331380521156 

我想將此URL重新格式化爲此類型。

<?php 
    $callback = "jQuery17107827386485878378_1331380511887" ; 
    $Title = "RODDER" ; // This values encoded in &models=%5B%7B%22ID%22%3A%2213%22%2C%22Title%22%3A%22RODDER%22%7D%5D 
    $ID = 13 ; // This values encoded in &models=%5B%7B%22ID%22%3A%2213%22%2C%22Title%22%3A%22RODDER%22%7D%5D 
?> 

請給我合適的幫助,我們該怎麼做?

+0

回調部分很簡單。 '%5B%7B%22ID%22%3A%2213%22%2C%22Title%22%3A%22RODDER%22%7D%5D'部分是URL編碼字符串。您可以先將其解碼,然後將其解析爲JOSN對象以獲取Id和標題值。 – TheVillageIdiot 2012-03-12 05:26:38

回答

0
$json = $_GET['models']; 
$data = json_decode($json, true); 
$Title = $data[0]['Title']; 
$ID = $data[0]['ID']; 
+1

如果返回的數據是JSON-P格式,這樣會工作嗎?看來這就是他會回來的。 – xbonez 2012-03-12 05:20:37

+1

如果你解碼該字符串,它只是:'[{「ID」:「13」,「Title」:「RODDER」}]'。沒有P在那裏。 – deceze 2012-03-12 06:03:30