Как бы я расшифровал JSON-массив значений и использовал его? - PullRequest
0 голосов
/ 09 марта 2011

В настоящее время я создал следующий вывод JSON из базы данных в мини-API, работающий на моем сайте.Я пытаюсь использовать этот API, но я не уверен, как.Вот результирующий JSON примера запроса:

{ "uploads":[ { "upload":{ "id":"74", "uploaded":"2011-03-08 11:43:36", "filename":"padthai.jpg", "owner":"2", "what":"Pad+Thai", "where":"Hot+Basil+Cafe", "details":"Thai+food!", "rating":"3", "lat":"37.938351", "lng":"-122.024483" } }, { "upload":{ "id":"73", "uploaded":"2011-03-08 11:39:36", "filename":"chirashi.jpg", "owner":"2", "what":"Chirashi+Bowl", "where":"Goshi", "details":"Freshest+fish+in+town!", "rating":"5", "lat":"35.267742", "lng":"-120.670570" } }, { "upload":{ "id":"72", "uploaded":"2011-03-08 11:38:04", "filename":"innout.jpg", "owner":"2", "what":"Double+Double,+Hamburger,+and+Fries", "where":"In-N-Out", "details":"I+love+their+fries!", "rating":"5", "lat":"35.126698", "lng":"-120.597206" } }, { "upload":{ "id":"71", "uploaded":"2011-03-08 11:20:45", "filename":"artspecialroll.jpg", "owner":"2", "what":"Art+Special+Roll", "where":"Happy+Roll", "details":"nom+nom+nom", "rating":"5", "lat":"37.976585", "lng":"-122.033646" } }, { "upload":{ "id":"69", "uploaded":"2011-03-08 11:18:29", "filename":"l.jpg", "owner":"2", "what":"Bun+Bo+Hue", "where":"Saigon+Bistro", "details":"Perfect~", "rating":"5", "lat":"37.973385", "lng":"-122.041183" } }, { "upload":{ "id":"68", "uploaded":"2011-03-08 11:15:33", "filename":"IMG_2811.JPG", "owner":"2", "what":"Asiago+Roast+Beef", "where":"Panera+Bread", "details":"Yummy", "rating":"5", "lat":"35.262539", "lng":"-120.678101" } }, { "upload":{ "id":"67", "uploaded":"2011-03-08 10:56:33", "filename":"IMG_2764.JPG", "owner":"2", "what":"Ninja+Roll+and+Salmon+Hand+Roll", "where":"Shin's", "details":"Ninja+roll+is+hella+good!", "rating":"4", "lat":"35.281921", "lng":"-120.660889" } } ] }

Как бы я специально расшифровал эту информацию и смог бы использовать ее в цикле для отображения всех «загрузок», обращающихся к элементамкаждая загрузка, которую я хочу?

Были бы полезны / нужны конкретные примеры кода!Полезные ресурсы JSON приветствуются!

Ответы [ 3 ]

4 голосов
/ 09 марта 2011

Если вы получите этот JSON в виде строки, вы можете превратить его в массив с json_decode($that_string, true);

Вы можете получить доступ к данным следующим образом:

$array = json_decode($json, true);
foreach($array['uploads'] as $foo=>$upload)
{
    foreach($upload as $key=>$value)
    {
    echo $value['what'] . " has a rating of " . $value['rating'] . "\n";
    }
}
2 голосов
/ 09 марта 2011

http://php.net/manual/en/function.json-decode.php

<?php

$json = '{"foo-bar": 12345}';

$obj = json_decode($json);

print $obj->{'foo-bar'}; // 12345

?>
2 голосов
/ 09 марта 2011
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...