Для инструмента, который я сейчас создаю, он выводит JSON, и я декодирую его с помощью PHP, а затем повторяю его через тот же скрипт. В упомянутом JSON некоторые массивы являются статическими и некоторые изменения, такие как идентификатор задания.Dynamic JSON Output
Например, для запроса, вы можете получить массив, такой как
{ "rank": "Supreme Damage Dealer", "player_id": Name, "name": "Name",
в этом случае, звание, player_id, и имя все статические и единственное, что изменения есть выход.
В некоторых массивах, таких как
{ "crimes": { "4769740": { "crime_id": 3, "crime_name": "Bomb threat", "participants": "1616976,1848006,1829524", "time_started": 1453948278, "time_completed": 1454207478, }, "4769739": { "crime_id": 4, "crime_name": "Planned robbery", "participants": "612285,1603035,579999,1858750,1875355", "time_started": 1453948245, "time_completed": 1454293845, },
Цифры такие, как 4769740 и 4769739 изменений, и поэтому я не могу вывести его, как я бы назвал/звание, потому что в отличие от имени/ранжировать изменения названия.
Мне нужно вывести его на страницу тем же, почему я бы назвал это имя и рейтинг. настоящее имя и звание, например, выводятся следующим образом:
$jsonurl = "http://api.torn.com/user/$id?selections=basic&key=$key";
$json = file_get_contents($jsonurl);
$decodedString = json_decode($json, true);
//var_dump($decodedString);
echo "Level: ".$decodedString["level"]."</br>";
echo "Name: ".$decodedString["name"]."</br>";
однако я не могу сделать то же самое за преступления. Как я могу вывести данные о преступлениях?
Использование кода $jsonurl = "http://api.torn.com/faction/7709?selections=crimes&key=key"; $json = file_get_contents($jsonurl); $decodedString = json_decode($json); foreach($decodedString as $key => $value){ //At this step $key is 4769740 //$value is an array of the values inside echo "Level: ".$value["crime_name"]."</br>"; }
Я получаю Фатальная ошибка сообщение об ошибке: Не удается использовать объект типа StdClass как массив в /var/www/html/torn/Scripts/Faction/crimes.php в строке 19
Вы пробовали заявление foreach? foreach ($ decodedString ["crime"] AS $ key => $ value) {echo $ decodedString ["crime"] [$ key];} – danielml01
'$ decodedString = json_decode ($ json);' должен быть '$ decodedString = json_decode ($ json, true); '. –