Ошибка зацикливания во вложенном объекте Json Laravel - PullRequest
0 голосов
/ 28 августа 2018

У меня есть возврат данных json из API и я хочу вывести некоторые из них с помощью Blade.

 9 => {#670 ▼
    +"id": 10300
    +"name": "Fallout 3: Mothership Zeta"
    +"slug": "fallout-3-mothership-zeta"
    +"url": "https://www.igdb.com/games/fallout-3-mothership-zeta"
    +"created_at": 1431649834920
    +"updated_at": 1532126985619
    +"summary": "Defy hostile alien abductors and fight your way off of the massive Mothership Zeta, orbiting Earth miles above the Capital Wasteland. Mothership Zeta takes Fall ▶"
    +"collection": 3
    +"rating": 77.763623864376
    +"popularity": 1.3333333333333
    +"total_rating": 77.763623864376
    +"total_rating_count": 29
    +"rating_count": 29
    +"game": 15
    +"games": array:10 [▶]
    +"tags": array:4 [▶]
    +"developers": array:1 [▶]
    +"publishers": array:1 [▶]
    +"category": 1
    +"player_perspectives": array:1 [▶]
    +"game_modes": array:1 [▶]
    +"themes": array:1 [▶]
    +"genres": array:2 [▶]
    +"first_release_date": 1249257600000
    +"platforms": array:3 [▶]
    +"release_dates": array:3 [▶]
    +"screenshots": array:7 [▶]
    +"cover": {#681 ▼
      +"url": "//images.igdb.com/igdb/image/upload/t_thumb/btawsi7cbgcmqlw67tpn.jpg"
      +"cloudinary_id": "btawsi7cbgcmqlw67tpn"
      +"width": 1061
      +"height": 1158
    }
  }

Бит, который я хочу получить, - это URL-адрес обложки, который я пробовал, и перебрать все данные json, на которые возвращаются 10 элементов, подобных приведенным выше

   @foreach ($game as $games)
                  <div class="col-md-2">
                      <img src="" alt="">
                      <p>{{ $games->name}}</p>
                      @foreach ($games->cover as $cover)
                          <p>{{$cover['url']}}</p>
                      @endforeach
                  </div>
              @endforeach

В настоящее время это то, что у меня в цикле, и я получаю эту ошибку

Недопустимое смещение строки 'url'

Ответы [ 2 ]

0 голосов
/ 28 августа 2018

В вашем цикле измените $games на $game:

@foreach($games as $game)
    <div class="col-md-2">
        <img src="" alt="">
        <p>{{$game->name}}</p>
        <p>{{$game->cover->url}}</p> 
    </div>
@endforeach
0 голосов
/ 28 августа 2018

Попробуйте это:

{{ $arr[9]->id }}
{{ $arr[9]->name }}
{{ $arr[9]->cover->url }}

Обратите внимание, я предполагаю, что имя массива большего размера, для которого это 10-й элемент, - $arr. Замените это имя на имя в вашем коде.

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