(PHP 5, PHP 7, PHP 8)
DOMDocument::loadHTML — Carga HTML de un string
Esta función procesa el HTML contenido un string source
.
A diferencia a cargar XML, HTML no tiene que estar bien formado para cargarse.
Use Dom\HTMLDocument to parse and process modern HTML instead of DOMDocument.
This function parses the input using an HTML 4 parser. The parsing rules of HTML 5, which is what modern web browsers use, are different. Depending on the input this might result in a different DOM structure. Therefore this function cannot be safely used for sanitizing HTML.
The behavior when parsing HTML can depend on the version of
libxml
that is being used, particularly with regards to
edge conditions and error handling.
For parsing that conforms to the HTML5 specification,
use Dom\HTMLDocument::createFromString() or
Dom\HTMLDocument::createFromFile(), added in PHP 8.4.
As an example, some HTML elements will implicitly close a parent element when encountered. The rules for automatically closing parent elements differ between HTML 4 and HTML 5 and thus the resulting DOM structure that DOMDocument sees might be different from the DOM structure a web browser sees, possibly allowing an attacker to break the resulting HTML.
Si se pasa una cadena vacía como source
,
se generará una advertencia. Esta advertencia no es generada por libxml
y no puede ser manejada utilizando las funciones de control de errores de libxml.
Aunque el HTML malformado debería cargar con éxito, esta función puede generar errores E_WARNING
al encontrarse con marcado erróneo. Se pueden usar las funciones de manejo de errores de libxml para manejar estos errores.
Versión | Descripción |
---|---|
8.3.0 | Esta función ahora tiene un tipo de retorno bool tentativo. |
8.0.0 |
Llamar a esta función de forma estática
ahora lanzará un Error.
Anteriormente, se emitía un E_DEPRECATED .
|
Ejemplo #1 Creando un Documento
<?php
$doc = new DOMDocument();
$doc->loadHTML("<html><body>Test<br></body></html>");
echo $doc->saveHTML();
?>