У меня есть этот JSON: Full json отсюда. Я попытался следовать этому, но мне трудно это делать
results: [
{
marketcap_price/_currency: "USD",
available_link_numbers/_source: "15,045,750",
marketcap_price/_source: "$ 6,509,092,365",
number: 1,
name_link/_text: "Bitcoin",
name_link/_source: "/currencies/bitcoin/",
number/_source: "1",
price_link/_source: "/currencies/bitcoin/#markets",
available_link: "http://blockchain.info",
name_image/_source: "/static/img/coins/16x16/bitcoin.png",
price_link/_text: "$ 432.62",
pricegraph7d_link/_source: "/currencies/bitcoin/#charts",
price_link: "http://coinmarketcap.com/currencies/bitcoin/#markets",
pricegraph7d_image: "https://files.coinmarketcap.com/generated/sparklines/1.png",
volume24h_link/_source: "/currencies/bitcoin/#markets",
change24h_value: "0.39 %"
}
]
Когда я делаю
echo $obj->results[0]->number;
он выводит значение
1
НО, когда я пытаюсь сделать
echo $obj->results[0]->price_link/_text;
Это ничего не дает. Для этого я использую PHP. Он должен выводить
$432.62
Любой способ получить эту цену? Что я делаю не так? Кроме того, можно ли получить значение только с числами и символом '$'?
price_link/_text
недопустимо Имя переменной PHP. Вы должны использовать один из следующих способов:
Используйте {}
для настраиваемого имени: $obj->results[0]->{'price_link/_text'}
Доступ к данным в виде массива: $obj['results'][0]['price_link/_text']
(используйте json_decode($json, true)
чтобы получить информацию как массив).
$obj->results[0]->{'price_link/_text'}
сработало
$obj = json_decode($variable, true);
и затем пытается повторить$obj['results']['price_link/_text'];