Задать вопрос
@Jony1337

Как удалить из массива всё элементы в которых есть определёны текст в php?

Привет , можно ли как то в php удалить тот элемент который содержит в себе определёны текст .
Массив выглядит примерно так .
Array
(
    [1] => Array
        (
            [0] => Textttttttttttttttttt Falseeeeeeeeee
   [1] => 
INFO .......................................

        )

)

Сделал вот так но не работает
for ($ke= 0; $ke <= count($ins['Raspunsurile'][0]);$ke++) {
		if (strpos($ins['Raspunsurile'][0][$ke], 'Textttttttttttttttttt Falseeeeeeeeee') !== false) 
	{
		
unset($ins['Raspunsurile'][0][$ke]);
	}
}
  • Вопрос задан
  • 164 просмотра
Подписаться 1 Оценить Комментировать
Решения вопроса 2
@WQP
$data = array(
    'Lorem',
    array(
        'Lorem',
        'ipsum',
        'dolor',
    ),
    'sit',
    'amet',
    array(
        'consectetur',
        'adipisicing',
        'elit',
        'Lorem',
    ),
);

function removeItems($data, $search) {
    foreach ($data as $key => $value) {
        if ( is_array($value) ) {
            $data[$key] = removeItems($value, $search);
        } else {
            if (strpos($value, $search) !== false) {
                unset($data[$key]);
            }
        }
    }

    return $data;
}

print_r(removeItems($data, 'Lorem'));
Ответ написан
EllPro
@EllPro
вроде пишу какой-то код elsevar.de
$array = [
    0 => ['0'],
    1 => ['1'],
    2 => ['2'],
    3 => ['3'],
    4 => ['4'],
    5 => ['Textttttttttttttttttt Falseeeeeeeeee'],
];


$re = '/Text+ False+/';


for ( $i = 0; $i <= count($array); $i++ ) {
    foreach ($array[$i] as $item) {
        preg_match_all($re, $item, $matches);
        if( print_r($matches) ) {
            unset($array[$i]);
        }
    }
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы