при прохождении результатов в laravel в цикле foreach сохраняется только последний элемент в новом элементе массива? - PullRequest
0 голосов
/ 16 октября 2018

Мой контроллер

$ последователей = Подписчиков :: где ('запрашивается', $ user-> id) -> где ('статус', 1) -> get ();

    foreach ($followers as $follower){

        $followerss = User::with('id', $follower->requester)->get();

    }

если у меня было два или более подписчиков для этого конкретного идентификатора, но в переменной im $ followerss она хранит только последние данные подписчика, но не предыдущие данные.

Заранее спасибо <3</p>

1 Ответ

0 голосов
/ 16 октября 2018

Это потому, что вы перезаписываете значение переменной $followerss при каждой итерации.

Вам необходимо объявить $followerss как массив, прежде чем он войдет в цикл, затем в цикл merge или push элементы

Пример push:

$followerss = [];

foreach ($followers as $follower){

    $users = User::with('id', $follower->requester)->get();
    foreach($users as $user) {
        $followerss[] = $user;
    }

}

Пример объединения:

$followerss = [];

foreach ($followers as $follower){

    $followerss = array_merge($followerss, User::with('id', $follower->requester)->get());

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