La clase DOMDocument

(PHP 5, PHP 7, PHP 8)

Introducción

Representa un documento HTML o XML en su totalidad; sirve como raíz del árbol de documento.

Sinopsis de la Clase

classDOMDocumentextendsDOMNodeimplementsDOMParentNode {
publicreadonly?DOMDocumentType$doctype;
publicreadonly?string$actualEncoding;
publicreadonly?string$xmlEncoding;
publicreadonlymixed$config;
publicreadonlyint$childElementCount;
publicreadonlystring$nodeName;
publicreadonlyint$nodeType;
publicreadonly?DOMNode$parentNode;
publicreadonly?DOMElement$parentElement;
publicreadonlyDOMNodeList$childNodes;
publicreadonly?DOMNode$firstChild;
publicreadonly?DOMNode$lastChild;
publicreadonly?DOMNode$previousSibling;
publicreadonly?DOMNode$nextSibling;
publicreadonlybool$isConnected;
publicreadonly?string$namespaceURI;
publicreadonly?string$localName;
publicreadonly?string$baseURI;
public__construct(string$version = "1.0", string$encoding = "")
publicappend(DOMNode|string...$nodes): void
publiccreateAttributeNS(?string$namespace, string$qualifiedName): DOMAttr|false
publiccreateElement(string$localName, string$value = ""): DOMElement|false
publiccreateElementNS(?string$namespace, string$qualifiedName, string$value = ""): DOMElement|false
publicimportNode(DOMNode$node, bool$deep = false): DOMNode|false
publicprepend(DOMNode|string...$nodes): void
publicrelaxNGValidate(string$filename): bool
publicsave(string$filename, int$options = 0): int|false
publicsaveHTMLFile(string$filename): int|false
publicsaveXML(?DOMNode$node = null, int$options = 0): string|false
publicschemaValidate(string$filename, int$flags = 0): bool
publicschemaValidateSource(string$source, int$flags = 0): bool
publicvalidate(): bool
publicxinclude(int$options = 0): int|false
publicDOMNode::C14N(
    bool$exclusive = false,
    bool$withComments = false,
    ?array$xpath = null,
    ?array$nsPrefixes = null
): string|false
publicDOMNode::C14NFile(
    string$uri,
    bool$exclusive = false,
    bool$withComments = false,
    ?array$xpath = null,
    ?array$nsPrefixes = null
): int|false
publicDOMNode::isSameNode(DOMNode$otherNode): bool
publicDOMNode::isSupported(string$feature, string$version): bool
}

Propiedades

actualEncoding

Obsoleto. Codificación actual del documento, es el equivalente de solo lectura de encoding.

childElementCount

The number of child elements.

config

Obsoleto. Configuración utilizada cuando DOMDocument::normalizeDocument() es invocado.

doctype

La declaración de tipo de documento asociada con este documento.

documentElement

The DOMElement object that is the first document element. If not found, this evaluates to null.

documentURI

La ubicación del documento o null si es indefinida.

encoding

Codificación del documento, como ha sido especificada en la declaración XML. Este atributo no está presente en la especificación DOM Nivel 3, pero es la única manera de manipular la codificación de un documento XML en esta implementación.

firstElementChild

First child element or null.

formatOutput

Nicely formats output with indentation and extra space. This has no effect if the document was loaded with preserveWhitespace enabled.

implementation

El objeto DOMImplementation que maneja este documento.

lastElementChild

Last child element or null.

preserveWhiteSpace

No remover espacios en blanco redundantes. Predeterminado a true. Setting this to false has the same effect as passing LIBXML_NOBLANKS as option to DOMDocument::load() etc.

recover

Proprietario. Activa el modo de recuperación. Ejemplo: intentar analizar documentos mal formados. Este atributo no es parte de la especificación DOM y es especifica para libxml.

resolveExternals

Asigne true para cargar entidades externas a una declaración doctype. Es útil para incluir entidades de caracteres en su documento XML.

standalone

Obsoleto. Si este documento es o no independiente, tal como ha sido especificado por la declaración XML, corresponde a xmlStandalone.

strictErrorChecking

Lanzar DOMException en caso de errores. Predeterminado a true.

substituteEntities

Proprietario.Si se substituyen o no las entidades. Este atributo no forma parte de la especificación DOM y es específico para libxml. Predeterminado a false.

Precaución

Enabling entity substitution may facilitate XML External Entity (XXE) attacks.

validateOnParse

Cargar y validar contra la DTD. Predeterminado a false.

Precaución

Enabling validating the DTD may facilitate XML External Entity (XXE) attacks.

version

Obsoleto. Versión de XML, corresponde a xmlVersion.

xmlEncoding

Un atributo que forma parte de la declaración XML y especifica la codificación de este documento. Es null cuando no ha sido especificado o se desconoce, como cuando el documento fue creado en memoria.

xmlStandalone

Un atributo que forma parte de la declaración XML y especifica cuando este documento es independiente. Es false cuando no ha sido especificado.

xmlVersion

Un atributo que forma parte de la declaracion XML y especifica el número de versión de este documento. Si no hay declaración y este documento soporta la característica "XML" el valor es "1.0".

Historial de cambios

VersiónDescripción
8.0.0DOMDocument implements DOMParentNode now.
8.0.0 The unimplemented method DOMDocument::renameNode() has been removed.

Notas

Nota:

The DOM extension uses UTF-8 encoding. Use mb_convert_encoding(), UConverter::transcode(), or iconv() to handle other encodings.

Nota:

When using json_encode() on a DOMDocument object the result will be that of encoding an empty object.

Tabla de contenidos

To Top