Как отфильтровать массив при помощи цикла foreach PHP? Способов для фильтрации массивов несколько. Самый простой вариант - это пробежаться по значениям массива при помощи цикла foreach. Читайте о циклах в статье циклы PHP для вывода информации.
# функция для фильтрации массива
$arr = array('book', 'pencil');
function filtr($arr)
{
foreach($arr as $value)
{
$count = substr_count($value, 'book');
if($count > 0) unset($value);
else $new[] = $value;
}
return $new;
}
$a = filtr($arr);
print_r($a);
Я применил функцию substr_count(). Она подсчитывает количество совпадений в массиве. Если вы работаете с кириллическими значениями, то используйте функцию mb_substr_count(). Внутри функции создаётся новый массив и потом этот массив возвращается при помощи return.