Удаление элемента массива по значению (не по ключу)
Рейтинг:
Очень часто при разработке веб-приложений требуется удалить элемент массива. Обычно это делается так:
$array = array('name' => 'Иван', 'lastname' => 'Шамшур','site' => 'http://biznesguide.ru'); unset($array['name']);
В данном примере мы удаляем элемент массива с ключом name.
Но иногда бывают такие ситуации, когда нам известно лишь значение массива, а не его ключ. Как быть в такой ситуации?
Как удалить элемент массива по значению?
Ответ на самом деле прост. Делается это так:
$array = array('name' => 'Иван', 'lastname' => 'Шамшур','site' => 'http://biznesguide.ru'); if(($key = array_search('http://biznesguide.ru',$array)) !== FALSE){ unset($array[$key]); }
Функция array_search() - ищет в массиве заданное значение и возвращает соответствующий ключ, в случае успеха. Если значение не найдено возвращает FALSE.
Используя эту функцию, узнаем ключ массива, и затем обычным способом удаляем элемент массива при помощи функции unset().
Надеюсь данный материал был Вам полезен! Успехов!
Оцените эту статью:
Интересно почитать
-
Комментарии (8)
- Сайт