Написать функцию, . Например, последовательность “<a>”, “<div>”, “</div>”, “</a>”, “<span>”, “</span>” - корректная структура, а последовательность “<a>”, “<div>”, ”</a>” - некорректная структура. Сделал так что то не работает PHP: function validate_html_tags($html_tags) { $tags = htmlspecialchars(implode("", $html_tags)); $html_doc="<!DOCTYPE html><head></head><html><body>" . $tags . "</body></html>"; $dom = new DOMDocument; $dom->loadHTML($html_doc); if ($dom->validate()) { echo "This document is valid!\n"; $dom->saveHTML(); // хотя зачем тут это return true; } echo "This document is invalid!\n"; return false; }
ТС хочет проверить валидность html кода а не экранировать его) htmlspecialchars не для этого. DOMDocument не знаю на скок корректно работает, можно попробовать различные публичные либы типа https://github.com/rexxars/html-validator