下面是我解析REST API URL的全部代码,以及我尝试做我需要它做的事情。我需要它做的是告诉我订阅ID(在下面的示例中是“7”)。但每次我打电话,它只会返回到期日期。问题是“7”总是会有所不同,具体取决于他们选择的客户端和包。因此,我需要能够判断它是“7”,“8”还是“232”并将其回显或分配给变量。我该怎么办呢?我似乎无法得到它。
CURL和JSON解码
$url = "HIDDEN";
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT, 4);
$json = curl_exec($ch);
if(!$json) {
echo curl_error($ch);
}
curl_close($ch);
echo "<pre>";
print_r(json_decode($json));
echo "</pre>";
$obj = json_decode($json);
echo $obj->{'name_l'};
echo "<br />";
echo $obj->{'subscriptions'}->{7};
代码输出
stdClass Object
(
[ok] => 1
[user_id] => 3
[name] => Nathan Brown
[name_f] => Nathan
[name_l] => Brown
[email] => test@email.com
[login] => username
[subscriptions] => stdClass Object
(
[7] => 2014-10-03
)
)
Brown
2014-10-03
答案 0 :(得分:1)
reset($obj->subscriptions); // Just to be safe
$foo = key($obj->subscriptions); // 7
$bar = current($obj->subscriptions); // 2014-10-03