如何使用PHP从this web service获取数据?
我需要一个简单的PHP函数来列出这些国家。
{
"valid":true,
"id":"0",
"data":{
"@type":"genericObjectArray",
"item":[
{
"id":"DE",
"description":"Deutschland"
},
{
"id":"ES",
"description":"España"
},
{
"id":"FR",
"description":"France"
},
{
"id":"PT",
"description":"Portugal"
},
{
"id":"UK",
"description":"United Kingdom"
},
{
"id":"US",
"description":"United States"
}
]
}
}
答案 0 :(得分:6)
假设php.ini
中有allow_url_fopen
(如果没有,请使用cURL库)。
$json = file_get_contents('http://onleague.stormrise.pt:8031/OnLeagueRest/resources/onleague/Utils/Countries ');
$data = json_decode($json, TRUE);
$countries = array();
foreach($data['data']['item'] as $item) {
$countries[] = $item['description'];
}
当然,如果$json
为FALSE
,请处理(请求时出错)。
或者,如果使用> = PHP 5.3。
$countries = array_map(function($item) {
return $item['description'];
}, $data['data']['item']);