Как удалить теги и многое другое из строки?

Мне нужно снять все <br /> и все «цитаты» ( " ) и все« и »( & ) и заменить их только пробелом …

Как я могу это сделать? (в PHP)

Я пробовал это для <br /> :

  $description = preg_replace('<br />', '', $description); 

Но он вернулся <> вместо всех <br />

благодаря

Для управления HTML обычно полезно использовать инструмент DOM, а не инструменты для простого текстового манипулирования (например, подумайте, что произойдет, если вы запустите варианты, такие как <br/> , <br /> с более чем одним пространством или даже <br> или <BR/> , которые иногда используются незаконно). См. Здесь: http://sourceforge.net/projects/simplehtmldom/

 <?php $text = '<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>'; echo strip_tags($text); echo "\n"; // Allow <p> and <a> echo strip_tags($text, '<p><a>'); ?> 

http://php.net/manual/en/function.strip-tags.php

Чтобы удалить все перестановки br:

 <br> <br /> <br/> <br > 

проверьте, что пользователь strip_only() функцию strip_only() в

http://www.php.net/strip_tags

«Использовать DOM вместо замены» caveat всегда корректно, но если задача действительно ограничена этими тремя символами, это должно быть нормально

Если str_replace() не работает для вас, тогда что-то еще должно быть неправильным, потому что

 $string = 'A string with <br/> & "double quotes".'; $string = str_replace(array('<br/>', '&', '"'), ' ', $string); echo $string; 

выходы

 A string with double quotes . 

Просьба привести пример строки ввода и то, что вы ожидаете от нее после фильтрации.

Вы можете использовать str_replace следующим образом:

  str_replace("<br/>", " ", $orig ); 

preg_replace и т. д. использует регулярные выражения, и это может быть не то, что вы хотите.

Попробуй это:

 $description = preg_replace('/<br \/>/iU', '', $description);