Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 30.03.2021 11:58:28

Не могу получить доступ к картинкам

Есть модель со связкой одна ко многим  выдаётся следующий массив данных

$mess=[{"id":1,"img":"\u043f\u0435\u0440\u0432\u0430\u044f \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430","user_question_id":140},{"id":2,"img":"\u0432\u0442\u043e\u0440\u0430\u044f \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430","user_question_id":140},{"id":3,"img":"\u0442\u0440\u0435\u0442\u044f\u044f \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430","user_question_id":140}];

по запросу $mess[0]['img'] выдаёт ошибку Undefined offset: 0
зато в цикле

@foreach ($mess['image'] as $img)
                {{$img->img}}
            @endforeach
}

всё работает нормально, как получить доступ только к первой картинке?

Изменено grafillo (30.03.2021 11:58:40)

Не в сети

#2 04.04.2021 23:22:37

Re: Не могу получить доступ к картинкам

Не совсем понятно. В первом примере первым идет ключ 0, а во втором image. Какая-то несостыковка. И не совсем понятно, если это у вас модель, то откуда берется массив?

Не в сети

#3 05.04.2021 08:21:30

Re: Не могу получить доступ к картинкам

Во-первых, я думаю твой первый фрагмент кода не настоящий, а придуманый, склееный из разных источников: php+js.
Это окуенно плозая практика спрашивать о чём-то и показывать не то, что есть на самом деле, а что-то фиктивное.

Массивы в PHP не обязательно имеют индекс 0. И вообще не обязательно имеют числовые ключи. Это не проблема для foreach. Для проверки можешь чуть изменить цикл чтобы узнать какие ключи есть

@foreach ($mess['image'] as $i => $img)
    {{$i}} : {{$img->img}}
@endforeach

В переменной $i будет значение ключа.

Изменено artoodetoo (05.04.2021 08:22:52)


There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.

Не в сети

Подвал раздела