Основываясь на ответе @ Tak и комментарии @FrancisAvila, я обнаружил, что этот фрагмент кода работает лучше для меня:
while (true)
{
$dom = new DOMDocument();
if (libxml_use_internal_errors(true) === true) // previous setting was true?
{
libxml_clear_errors();
}
$dom->loadHTML(file_get_contents('ebay.html'));
}
print_r(libxml_get_errors()); // errors from the last iteration are accessible
Это дает дополнительные преимущества: 1) не отбрасывать ошибки последнего анализа, если вам когда-либо понадобится получить к ним доступ через libxml_get_errors()
, и 2) вызывать libxml_clear_errors()
только при необходимости, так как libxml_use_internal_errors()
возвращает предыдущее состояние настройки.