Задать вопрос
@snake2
Сразу пишу legacy код

Как обойти два массива с условием?

Есть два массива
foreach($users as $user) {
    foreach($admins as $admin) {
        if($admin->id === $user->id) {
              {первое услотиве}
              break;
        }
        {если, пройдя весь массив $admins совпадений не найдено выполняется второе условие, и уходит на следующую итерацию}
    }
}
  • Вопрос задан
  • 92 просмотра
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
FanatPHP
@FanatPHP
Чебуратор тега РНР
перед началом цикла сбрасывать флаг
если совпадение найдено, то взводить флаг
по окончании цикла проверять флаг

но вообще это все делается не так.
при создании массивов они индексируются не цЫферками по порядку, а по id
и тогда цтився проверка сводится к
if (isset($admins[$user->id]) {
} else {
}

}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽