Лучший способ разбора недопустимого HTML в PHP

Есть ли лучший подход для синтаксического анализа недействительного HTML, а затем применения Tidy на нем?

Боковое примечание: Есть некоторая ситуация, когда вы не можете получить Tidy. Regexp также не рекомендуется для разбора html.

Ответы

Ответ 1

Я бы попробовал что-то вроде этого: http://php.net/manual/en/domdocument.loadhtml.php

С этой страницы:

Функция анализирует HTML, содержащийся в источнике строки. В отличие от загрузки XML, HTML не должен быть хорошо сформирован для загрузки. Эта функция также может быть вызвана статически для загрузки и создания объекта DOMDocument.

Ответ 2

SimpleHTMLDOM, как известно, более мягко, чем внутренние функции DOM PHP.