Как получить данные JSON с помощью переполнения стека

Я новичок в PHP, и я просто пытаюсь получить одно значение из словаря JSON. Это кажется очень простым (по крайней мере, мне), но у меня возникли проблемы с этим. Я посмотрел на документацию PHP для JSON_decode и я тоже посмотрел наПарсинг данных JSON с удаленного сервера«но это не сделало то, что я хотел. Он возвратил элемент словаря, который я хотел, как 0, а затем просто выплюнул файл JSON. Затем я посмотрел на»получить данные из JSON с помощью php«и это просто ничего не возвращает.

Пример JSON

{
"ask": 344.28,
"bid": 343.89,
"last": 343.97
}

Первая попытка

$jsoncontent=file_get_contents("https://api.bitcoinaverage.com/ticker/global/USD");`
$priceusd=json_decode($json-content);

$lastusd=$priceusd['last'];

echo "Decoded JSON:\n";
echo "$priceusd\n";
echo "Raw JSON:\n";
echo "$jsoncontent\n";

Вторая попытка

$result=file_get_contents("https://api.bitcoinaverage.com/ticker/global/USD");
$result = iconv('UTF-16', 'UTF-8', $result);
$json = json_decode($result);

echo $json->last;

Все, что я хочу, это значение одного из элементов словаря в JSON по URL.

Спасибо!

1

Решение

Если предположить, $data содержит то, что было возвращено с сервера, вы делаете:

$object = json_decode($data);
$last = $object->last;

или же:

$array = json_decode($data, true);
$last = $array['last'];

Когда вы пропустите второй аргумент json_decode, он возвращает объект, и вы получаете доступ к части, которую вы хотите, как свойство объекта. Если вы дадите второй аргумент true, он возвращает ассоциативный массив, и вы получаете доступ к элементу, используя обозначение массива.

7

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]