TOOMOLOD
@TOOMOLOD
Веб-мастер

Проходить только один раз по ключу в Foreach PHP?

Всем привет!
Чет мозг поплыл с Foreach, есть кучах одинаковых данных
Например: куча данных с цифрой 1 и куча данных с цифрой 2, мне нужно цифру 1 и цифру 2 выводить только один раз из всего количества, как правильно сделать?
Грубо говоря дублируются одинаковые данные, мне их нужно вывести один раз
  • Вопрос задан
  • 392 просмотра
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега PHP
Попробую поугадывать по вашему небрежно оформленному вопросу, чего же вы хотите.

Нужно отделить логику от представления.
Сначала данные, которые вы собираетесь выводить, нужно подготовить:
$tipIds = array_unique(array_column($tovar['tips'], 'id'));

Дальше можете делать с ними всё, что угодно.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@XaWKeR
foreach ($var as $blabla) {

//first

break; // выходим

}
Ответ написан
@rPman
Можно пересоздать массив, используя в качестве идентификатора то что должно быть уникальным (актуально если сами элементы не уникальны но нужно учитывать от их данных только часть, или же там не хранятся данные а только способ их получить и array_unique не прокатит)

$tmp=[];
foreach($data as $item)
   $tmp[$item->id]=$item;

foreach($tmp as $id=>item)
  // do smthng
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы