Здравствуйте, имеется следующий код, но код отрабатывает только для третьего уровня вложенности, как заставить его работать до неограниченного кол-ва уровней вложенности?
public function users()
{
return $this->hasMany(UserFollower::class, 'user_id', 'follower_id');
}
public function matrix($user, $follower)
{
$followers = UserFollower::where('user_id', $follower->user->id)
->get();
if($followers->count() < 2):
$follower = new UserFollower([
'user_id' => $follower->user->id,
'follower_id' => $user->id
]);
$follower->save();
return 'success';
else:
foreach($followers as $follower):
if($follower->users->count() == 2):
continue;
else:
$follower = new UserFollower([
'user_id' => $follower->user->id,
'follower_id' => $user->id
]);
$follower->save();
return 'success';
endif;
$this->matrix($user, $follower);
endforeach;
endif;
}
public function store(Request $request)
{
/* Регистрируем пользователя */
$user = New User($request->all());
$user->save();
/* Матрица */
$followers = UserFollower::where('user_id', Auth::user()->id)
->get();
if($followers->count() < 2):
$follower = new UserFollower([
'user_id' => Auth::user()->id,
'follower_id' => $user->id
]);
$follower->save();
else:
foreach($followers as $follower):
if($follower->users->count() == 2):
continue;
else:
$follower = new UserFollower([
'user_id' => $follower->user->id,
'follower_id' => $user->id
]);
$follower->save();
break;
endif;
if($this->matrix($user, $follower) == 'success') break;
endforeach;
endif;
/* Редирект */
return Redirect::back()
->with('message', 'Статус выполнения: 200');
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Как проверить подключение к удаленной БД на MODx revo, если подключаюсь через redbeanphp (ORM)
Есть большое количество urlНеобходимо проверить, какие ещё существуют, а какие нет
Приветствую! Подскажите, новичку в Bitrix, где найти файл tempalephp? Я с этой CMS раньше не работала
Всем приветПомогите пожалуйста разобраться с ошибкой, которую я получаю