работа с массивами

Тема в разделе "PHP", создана пользователем sultan347, 5 окт 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. sultan347

    sultan347

    Регистр.:
    25 апр 2009
    Сообщения:
    230
    Симпатии:
    7
    есть два массива $num[] и $y[]. Как удалить из первого все элементы, которые нет на втором, то есть оставить надо только те элементы, которые есть на втором, совпадающие по значению.
     
  2. Disher

    Disher Постоялец

    Регистр.:
    25 июл 2009
    Сообщения:
    90
    Симпатии:
    8
  3. saxel

    saxel Постоялец

    Регистр.:
    4 дек 2007
    Сообщения:
    118
    Симпатии:
    23
    Код:
    foreach ($num as $key => $value) {
     if (!in_array($value, $y)) @unset $num[$key];
    }
    
     
  4. Kloster

    Kloster

    Регистр.:
    22 июн 2009
    Сообщения:
    216
    Симпатии:
    12
    array_diff вернет только те, которые есть в первом, но нет во втором, а ему надо наоборот.
    Ну жен array_intersect()
    Читаем мануал
    Перейти по ссылке
     
  5. dohtar

    dohtar Писатель

    Регистр.:
    28 ноя 2008
    Сообщения:
    7
    Симпатии:
    1
    а если нужно сохранить ключи массива, используйте array_intersect_assoc()
     
Статус темы:
Закрыта.