Я пытаюсь вернуть полную модель JSON с рынка паровых коммуникаций.
К сожалению, он возвращает только 1-й образец.
Должно возвращаться: {«success»: true, «lower_price»: «$ 0.63», «volume»: «5,301», «median_price»: «$ 0.68»}
Instaid возвращает только {«success»: true}
<?php
$hash = "AK-47 | Elite Build (Minimal Wear)";
$marketObj = json_decode(file_get_contents("http://steamcommunity.com/market/priceoverview/?currency=1&appid=730&market_hash_name=$hash"), true);
if ($marketObj['success'] !== true) {
echo jsonErr('An error occured while fetching market price for an item.');
return;
}else {
echo ($marketObj['lowest_price']);
}
?>
так что проблема в том, что я не могу прочитать другие параметры в моем скрипте.
Кто-нибудь понял?
Вам нужно urlencode()
строка запроса, потому что она содержит специальные символы:
$hash = urlencode("AK-47 | Elite Build (Minimal Wear)");
В качестве альтернативы, вы можете сделать что-то вроде этого:
$url = 'http://steamcommunity.com/market/priceoverview/?' . http_build_query([
'currency' => '1',
'appid' => '730',
'market_hash_name' => 'AK-47 | Elite Build (Minimal Wear)',
]);
$marketObj = json_decode(file_get_contents($url), true);
Других решений пока нет …