Я сделал функцию, которая помогает мне проверять мой HTML-документ. Это работает, но когда он достигает $doc->validate()
части, у меня появляется ошибка о Максимальном времени выполнения
/* This my function and arrays */
$correct_html_array = ['<a>', '<div>', '</div>', '</a>', '<span>', '</span>'];
$incorrect_html_array = ['<a>', '<div>', '</a>', '<p>' , '</tr>'];
function validate_html($html_array) {
$tags = htmlspecialchars(implode("", $html_array));
$html_doc="<!DOCTYPE html>" . "<html><body>" . $tags . "</body></html>";
$doc = new DOMDocument();
$doc->loadHTML($html_doc);
if($doc->validate()) { // here is a Maximum execution time error
echo 'Код валидный!';
} else {
echo 'Код не валидный!';
}
}
validate_html($incorrect_html_array);
/ ** Вот ошибка * /
Внимание:
DOMDocument :: Validate (http://www.w3.org/TR/REC-html40/loose.dtd):
не удалось открыть поток: HTTP-запрос не выполнен! в
C: \ xampp \ htdocs \ test \ task_4.php в строке 22 * 1010 *
Предупреждение: DOMDocument :: validate (): предупреждение ввода-вывода: не удалось загрузить
внешнее юридическое лицо "http://www.w3.org/TR/REC-html40/loose.dtd" в
C: \ xampp \ htdocs \ test \ task_4.php в строке 22 * 1014 *
Предупреждение: DOMDocument :: validate (): не удалось загрузить внешнее подмножество
"http://www.w3.org/TR/REC-html40/loose.dtd" в
C: \ xampp \ htdocs \ test \ task_4.php в строке 22 * 1018 *
Неустранимая ошибка: максимальное время выполнения 30 секунд превышено в
C: \ xampp \ htdocs \ test \ task_4.php в строке 22 Предупреждение:
DOMDocument :: Validate (http://www.w3.org/TR/REC-html40/loose.dtd):
не удалось открыть поток: HTTP-запрос не выполнен! в
C: \ xampp \ htdocs \ test \ task_4.php в строке 22 * 1022 *
Предупреждение: DOMDocument :: validate (): предупреждение ввода-вывода: не удалось загрузить
внешнее юридическое лицо "http://www.w3.org/TR/REC-html40/loose.dtd" в
C: \ xampp \ htdocs \ test \ task_4.php в строке 22 * 1026 *
Предупреждение: DOMDocument :: validate (): не удалось загрузить внешнее подмножество
"http://www.w3.org/TR/REC-html40/loose.dtd" in
C: \ xampp \ htdocs \ test \ task_4.php в строке 22 * 1030 *
Неустранимая ошибка: максимальное время выполнения 30 секунд превышено в
C: \ xampp \ htdocs \ test \ task_4.php в строке 22 * 1032 *
Я буду признателен, если вы поможете мне решить эту проблему