2014-10-16 2 views
1

Im пытается сохранить и использовать данные, полученные из API (в PHP).Хранение/перемещение данных, полученных от API

Однако его необходимо хранить в хорошем состоянии, чтобы его можно было легко получить.

Пример результатом апи:

{"2012131": [{ 
    "queue": "RANKED_SOLO_5x5", 
    "name": "Diana's Assassins", 
    "entries": [{ 
     "leaguePoints": 40, 
     "isFreshBlood": true, 
     "isHotStreak": false, 
     "division": "V", 
     "isInactive": false, 
     "isVeteran": false, 
     "playerOrTeamName": "Myname", 
     "playerOrTeamId": "2012131", 
     "wins": 200 
    }], 
    "tier": "PLATINUM" 
}]} 

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

редактировать: забыл упомянуть, что я попытался создать массивы и раскалывается данных с использованием

$text_line = explode("," , $text_line); 

но не мог получить правильный результат.

+0

Кодировать как JSON (данные уже есть), сохранить в файл. Ваш вопрос очень расплывчатый - вы действительно спрашиваете, как получить доступ к данным в вашей структуре данных? –

ответ

0

Вы можете использовать json_decode(), а затем сохранить объект/массив в session.

Преобразование, что ответ JSON в массив в PHP:

$arrayResponse = json_decode($apiResponse,true); 
print_r($arrayResponse); 

Это приведет:

Array 
(
    [2012131] => Array 
     (
      [0] => Array 
       (
        [queue] => RANKED_SOLO_5x5 
        [name] => Diana's Assassins 
        [entries] => Array 
         (
          [0] => Array 
           (
            [leaguePoints] => 40 
            [isFreshBlood] => 1 
            [isHotStreak] => 
            [division] => V 
            [isInactive] => 
            [isVeteran] => 
            [playerOrTeamName] => Myname 
            [playerOrTeamId] => 2012131 
            [wins] => 200 
           ) 
         ) 
        [tier] => PLATINUM 
       ) 
     ) 
) 

Для того, чтобы сохранить этот массив для последующего использования, вы можете сделать:

session_start(); 
$_SESSION['apiResponse'] = $arrayResopnse; 

Затем на другой странице вы можете получить доступ к playerOrTeamName следующим образом:

session_start(); 
$playerOrTeamName = $_SESSION['apiResponse']['2012131']['0']['entries']['0']['playerOrTeamName']; 
Смежные вопросы