Um die Warnungen auszublenden, müssen Sie spezielle Anweisungen geben, libxmldie intern für die Analyse verwendet werden:
libxml_use_internal_errors(true);
$dom->loadHTML($html);
libxml_clear_errors();
Das libxml_use_internal_errors(true)zeigt an, dass Sie die Fehler und Warnungen selbst behandeln und nicht möchten, dass sie die Ausgabe Ihres Skripts durcheinander bringen.
Dies ist nicht dasselbe wie der @Bediener. Die Warnungen werden hinter den Kulissen gesammelt und können anschließend abgerufen werden, indem Sie libxml_get_errors()für den Fall, dass Sie eine Protokollierung durchführen oder die Liste der Probleme an den Anrufer zurücksenden möchten, diese verwenden .
Unabhängig davon, ob Sie die gesammelten Warnungen verwenden oder nicht, sollten Sie die Warteschlange immer durch einen Anruf löschen libxml_clear_errors().
Den Staat erhalten
Wenn Sie anderen Code verwenden, der verwendet wird libxml, kann es sinnvoll sein, sicherzustellen, dass Ihr Code den globalen Status der Fehlerbehandlung nicht ändert . Dazu können Sie den Rückgabewert von verwenden libxml_use_internal_errors(), um den vorherigen Status zu speichern.
$libxml_previous_state = libxml_use_internal_errors(true);
$dom->loadHTML($html);
libxml_clear_errors();
libxml_use_internal_errors($libxml_previous_state);