2011-12-14 5 views
3

Я просматриваю web для html, и когда я использую php strip_tags, он удаляет весь html в одну строку, удаляя всю структуру.php/html: заменить html закрывающие теги на новые строки

Я хотел бы сохранить структуру, заменив замыкающие h, p и br тегами на новые строки.

Будет ли замена preg лучшим решением для этого?

Как только я заменил все закрывающие теги, я бы использовал теги с полосой, но таким образом у меня была бы базовая структура.

ответ

5
$str = 'some html'; 
$tags = array('</p>','<br />','<br>','<hr />','<hr>','</h1>','</h2>','</h3>','</h4>','</h5>','</h6>'); 
$str = str_replace($tags,"\n",$str); 

// then strip tags 
+0

Lovely, спасибо. Еще 6 минут, пока я не могу отметить это как ответ. – giorgio79

+0

Зачем перебирать массив? Вы можете просто передать массив прямо на str_replace. – liquorvicar

+0

Хорошая точка ликервикар, сделайте это. – giorgio79

0

Почему не просто запустить его через tidy послесловие, чтобы получить структуру обратно?

+0

Я хотел бы снять все теги html, но сохранить основную структуру с новыми строками. – giorgio79