2011-05-26 73 views
-1

我沒有正確地獲取數據。這只是給了我什麼!?PHP函數從Web服務獲取數據

function getUser() { 
    $json = file_get_contents('http://onleague.stormrise.pt:8031/OnLeagueRest/resources/onleague/Social/WallEntries?id_user=a7664093-502e-4d2b-bf30-25a2b26d6021&count=3'); 
    $data = json_decode($json, TRUE); 
    $user = array(); 
    foreach($data['data']['item'] as $item) { 
     $user[] = $item; 
    } 
    foreach($user as $v) 
    { 
     echo $v['userID']." ".$v['userName'].'<br />'; 
    } 
} 
getUser(); 
+1

哪個部分失敗了,再次? – sdleihssirhc 2011-05-26 02:54:55

+1

'print_r($ data)'給你什麼? – 2011-05-26 02:56:46

回答

1

$json = file_get_contents('http://onleague.stormrise.pt:8031/OnLeagueRest/resources/onleague/Social/WallEntries?id_user=a7664093-502e-4d2b-bf30-25a2b26d6021&count=3'); 

返回不是一個有效json字符串可由json_decode被轉換成陣列。如果你看裏面,你會發現像子:

"dateAdded":2011-05-21T00:00:00+01:00 

2011-05-21T00:00:00+01:00這裏應該用「給你一個有效json字符串,可以通過json_decode解析所以,你$data現在是NULL(這就是json_decode返回)

1

那麼,不要只寫功能,當他們不工作時看看他們。使用一些echo和print_r語句來查看您遇到問題的位置。

在給它賦值之後立即回顯你的$ json變量。它是否包含數據?如果是,則print_r $ data變量。它是否按預期格式化?

+0

感謝您的努力 – 2011-05-26 03:12:33

+1

不用擔心,希望它有幫助 – Claudiu 2011-05-26 03:14:55