# Modelo Objeto de un Documento

# Introducción

La extensión DOM permite realizar operaciones sobre documentos XML y HTML mediante la API DOM de PHP.

> Nota: La extensión DOM utiliza el codificado UTF-8. Utilice mb_convert_encoding(), UConverter::transcode(), o iconv() para manipular otros codificados.

- Instalación/Configuración
  - Requerimientos
  - Instalación
- Constantes predefinidas
- Ejemplos
- DOMAttr — La clase DOMAttr
  - DOMAttr::__construct — Crea un nuevo objeto DOMAttr
  - DOMAttr::isId — Verifica si el atributo es un identificador definido
- DOMCdataSection — La clase DOMCdataSection
  - DOMCdataSection::__construct — Construye un nuevo objeto DOMCdataSection
- DOMCharacterData — La clase DOMCharacterData
  - DOMCharacterData::after — Añade nodos después de los datos
  - DOMCharacterData::appendData — Añade la cadena al final de los datos en el nodo
  - DOMCharacterData::before — Añade nodos antes de los datos de carácter
  - DOMCharacterData::deleteData — Elimina un rango de caracteres de los datos de carácter
  - DOMCharacterData::insertData — Inserta una cadena en el desplazamiento de punto de código UTF-8 especificado
  - DOMCharacterData::remove — Elimina el nodo de datos de carácter
  - DOMCharacterData::replaceData — Reemplaza una subcadena en los datos de carácter
  - DOMCharacterData::replaceWith — Reemplaza los datos por nuevos nodos
  - DOMCharacterData::substringData — Extrae un rango de datos de los datos de carácter
- DOMChildNode — La interfaz DOMChildNode
  - DOMChildNode::after — Añade nodos después del nodo
  - DOMChildNode::before — Añade nodos antes del nodo
  - DOMChildNode::remove — Elimina el nodo
  - DOMChildNode::replaceWith — Reemplaza el nodo por nuevos nodos
- DOMComment — La clase DOMComment
  - DOMComment::__construct — Crea un nuevo objeto DOMComment
- DOMDocument — La clase DOMDocument
  - DOMDocument::adoptNode — Transfiere un nodo de otro documento
  - DOMDocument::append — Añade nodos después del último nodo hijo
  - DOMDocument::__construct — Crea un nuevo objeto DOMDocument
  - DOMDocument::createAttribute — Crea un nuevo atributo
  - DOMDocument::createAttributeNS — Crea un nuevo atributo con un espacio de nombres asociado
  - DOMDocument::createCDATASection — Crea un nuevo nodo cdata
  - DOMDocument::createComment — Crea un nuevo nodo de comentario
  - DOMDocument::createDocumentFragment — Crea un nuevo fragmento de documento
  - DOMDocument::createElement — Crea un nuevo nodo elemento
  - DOMDocument::createElementNS — Crea un nuevo nodo elemento con el nombre de espacio asociado
  - DOMDocument::createEntityReference — Create new entity reference node
  - DOMDocument::createProcessingInstruction — Crea un nuevo nodo PI
  - DOMDocument::createTextNode — Crea un nuevo nodo de texto
  - DOMDocument::getElementById — Busca un elemento con un cierto identificador
  - DOMDocument::getElementsByTagName — Busca todos los elementos con el nombre de etiqueta local dado
  - DOMDocument::getElementsByTagNameNS — Búsqueda de todos los elementos con un nombre de etiqueta dado en un espacio de nombres especificado
  - DOMDocument::importNode — Importa un nodo dentro del documento actual
  - DOMDocument::load — Cargar un documento XML de un archivo.
  - DOMDocument::loadHTML — Carga HTML de un string
  - DOMDocument::loadHTMLFile — Carga HTML desde un fichero
  - DOMDocument::loadXML — Carga de XML desde una cadena de caracteres
  - DOMDocument::normalizeDocument — Normaliza el documento
  - DOMDocument::prepend — Añade nodos antes del primer nodo hijo
  - DOMDocument::registerNodeClass — Registra la clase extendida utilizada para crear un tipo de nodo base
  - DOMDocument::relaxNGValidate — Realiza una validación relaxNG del documento
  - DOMDocument::relaxNGValidateSource — Realiza una validación relaxNG del documento
  - DOMDocument::replaceChildren — Reemplaza los hijos en el documento
  - DOMDocument::save — Copia el árbol XML interno a un archivo
  - DOMDocument::saveHTML — Copia el documento interno a una cadena usando el formato HTML
  - DOMDocument::saveHTMLFile — Copia el documento interno a un fichero usando el formato HTML
  - DOMDocument::saveXML — Guarda el árbol interno XML en una cadena de caracteres
  - DOMDocument::schemaValidate — Valida un documento basado en un esquema. Sólo se admite XML Schema 1.0.
  - DOMDocument::schemaValidateSource — Valida un documento basado en un esquema
  - DOMDocument::validate — Valida un documento basado en su DTD
  - DOMDocument::xinclude — Reemplaza los XIncludes en un objeto DOMDocument
- DOMDocumentFragment — La clase DOMDocumentFragment
  - DOMDocumentFragment::append — Añade nodos después del último nodo hijo
  - DOMDocumentFragment::appendXML — Añade información XML sin formato
  - DOMDocumentFragment::__construct — Construye un objeto DOMDocumentFragment
  - DOMDocumentFragment::prepend — Añade nodos antes del primer nodo hijo
  - DOMDocumentFragment::replaceChildren — Reemplaza los hijos en el fragmento
- DOMDocumentType — La clase DOMDocumentType
- DOMElement — La clase DOMElement
  - DOMElement::after — Añade nodos después del elemento
  - DOMElement::append — Añade nodos después del último hijo
  - DOMElement::before — Añade nodos antes del elemento
  - DOMElement::__construct — Crea un nuevo objeto DOMElement
  - DOMElement::getAttribute — Devuelve el valor de un atributo
  - DOMElement::getAttributeNames — Devuelve los nombres de los atributos
  - DOMElement::getAttributeNode — Devuelve el nodo de un atributo
  - DOMElement::getAttributeNodeNS — Devuelve el nodo de un atributo
  - DOMElement::getAttributeNS — Devuelve el valor de un atributo
  - DOMElement::getElementsByTagName — Obtiene los elementos por nombre de etiqueta
  - DOMElement::getElementsByTagNameNS — Recupera los elementos por su espacio de nombres y su localName
  - DOMElement::hasAttribute — Comprueba si existe un atributo
  - DOMElement::hasAttributeNS — Comprueba si un atributo existe
  - DOMElement::insertAdjacentElement — Inserta un elemento adyacente
  - DOMElement::insertAdjacentText — Inserta un texto adyacente
  - DOMElement::prepend — Añade nodos antes del primer hijo
  - DOMElement::remove — Elimina el elemento
  - DOMElement::removeAttribute — Elimina un atributo
  - DOMElement::removeAttributeNode — Elimina un atributo
  - DOMElement::removeAttributeNS — Elimina un atributo
  - DOMElement::replaceChildren — Reemplaza los hijos en el elemento
  - DOMElement::replaceWith — Reemplaza el elemento por nuevos nodos
  - DOMElement::setAttribute — Añade un nuevo atributo o modifica uno existente
  - DOMElement::setAttributeNode — Añade un nuevo atributo al elemento
  - DOMElement::setAttributeNodeNS — Añade un nuevo atributo al elemento
  - DOMElement::setAttributeNS — Añade un nuevo atributo
  - DOMElement::setIdAttribute — Declara el atributo especificado por su nombre como de tipo ID
  - DOMElement::setIdAttributeNode — Declara el atributo especificado por el nodo como de tipo ID
  - DOMElement::setIdAttributeNS — Declara el atributo especificado por su nombre local y su URI del espacio de nombres como de tipo ID
  - DOMElement::toggleAttribute — Conmuta el atributo
- DOMEntity — La classe DOMEntity
- DOMEntityReference — La clase DOMEntityReference
  - DOMEntityReference::__construct — Crea un nuevo objeto DOMEntityReference
- DOMException — La clase DOMException / Dom\Exception
- DOMImplementation — La clase DOMImplementation
  - DOMImplementation::__construct — Crea un nuevo objeto DOMImplementation
  - DOMImplementation::createDocument — Crea un objeto DOM Document del tipo especificado con sus elementos
  - DOMImplementation::createDocumentType — Crea un objeto DOMDocumentType vacío
  - DOMImplementation::hasFeature — Verifica si la implementación DOM implementa una funcionalidad específica
- DOMNamedNodeMap — La clase DOMNamedNodeMap
  - DOMNamedNodeMap::count — Obtiene el número de nodos en la colección no ordenada (map)
  - DOMNamedNodeMap::getIterator — Obtiene un iterador externo
  - DOMNamedNodeMap::getNamedItem — Devuelve un nodo especificado por su nombre
  - DOMNamedNodeMap::getNamedItemNS — Recupera un nodo especificado por el nombre local y la URI del espacio de nombres
  - DOMNamedNodeMap::item — Recupera un nodo especificado por su índice
- DOMNameSpaceNode — La clase DOMNameSpaceNode
  - DOMNameSpaceNode::__sleep — Prohíbe la serialización a menos que los métodos de serialización estén implementados en una subclase
  - DOMNameSpaceNode::__wakeup — Prohíbe la deserialización a menos que los métodos de deserialización estén implementados en una subclase
- DOMNode — La clase DOMNode
  - DOMNode::appendChild — Añade un nuevo hijo al final de los hijos
  - DOMNode::C14N — Canoniza nodos en una cadena
  - DOMNode::C14NFile — Canoniza nodos en archivo
  - DOMNode::cloneNode — Clona un nodo
  - DOMNode::compareDocumentPosition — Comparar la posición de dos nodos
  - DOMNode::contains — Verifica si un nodo contiene otro nodo
  - DOMNode::getLineNo — Obtiene el número de línea de un nodo
  - DOMNode::getNodePath — Obtener un XPath de un nodo
  - DOMNode::getRootNode — Devuelve el nodo raíz
  - DOMNode::hasAttributes — Comprueba si un nodo tiene atributos
  - DOMNode::hasChildNodes — Comprueba si el nodo tiene hijos
  - DOMNode::insertBefore — Añade un nuevo hijo antes de un nodo de referencia.
  - DOMNode::isDefaultNamespace — Comprueba si la URI del espacio de nombres especificada es el espacio de nombres predeterminado
  - DOMNode::isEqualNode — Comprueba si los dos nodos son iguales
  - DOMNode::isSameNode — Indica si dos nodos son el mismo nodo
  - DOMNode::isSupported — Comprueba si una característica está soportada para la versión especificada
  - DOMNode::lookupNamespaceURI — Obtiene la URI del espacio de nombres del nodo basado en el prefijo
  - DOMNode::lookupPrefix — Devuelve el prefijo del espacio de nombres según el URI del espacio de nombres
  - DOMNode::normalize — Normaliza el nodo
  - DOMNode::removeChild — Elimina un hijo de la lista de hijos
  - DOMNode::replaceChild — Reemplaza un hijo
  - DOMNode::__sleep — Prohíbe la serialización a menos que los métodos de serialización se implementen en una subclase
  - DOMNode::__wakeup — Prohíbe la deserialización a menos que los métodos de deserialización estén implementados en una subclase
- DOMNodeList — La clase DOMNodeList
  - DOMNodeList::count — Obtiene el número de nodos en la lista
  - DOMNodeList::getIterator — Devuelve un iterador externo
  - DOMNodeList::item — Devuelve un nodo especificado por su índice
- DOMNotation — La clase DOMNotation
- DOMParentNode — La interfaz DOMParentNode
  - DOMParentNode::append — Añade nodos después del último nodo hijo
  - DOMParentNode::prepend — Añade nodos antes del primer nodo hijo
  - DOMParentNode::replaceChildren — Reemplaza los hijos en un nodo
- DOMProcessingInstruction — La clase DOMProcessingInstruction
  - DOMProcessingInstruction::__construct — Crea un nuevo objeto DOMProcessingInstruction
- DOMText — La clase DOMText
  - DOMText::__construct — Crea un nuevo objeto DOMText
  - DOMText::isElementContentWhitespace — Devuelve si este nodo de texto contiene espacios en blanco en el contenido del elemento
  - DOMText::isWhitespaceInElementContent — Indica si este nodo de texto contiene espacios en blanco
  - DOMText::splitText — Rompe este nodo en dos nodos en el índice especificado
- DOMXPath — La clase DOMXPath
  - DOMXPath::__construct — Crea un nuevo objeto DOMXPath
  - DOMXPath::evaluate — Evalúa una expresión XPath dada y devuelve un resultado tipado si es posible
  - DOMXPath::query — Evalúa la expresión XPath dada
  - DOMXPath::quote — Cita un string para su uso en una expresión XPath
  - DOMXPath::registerNamespace — Registra el espacio de nombres con el objeto DOMXPath
  - DOMXPath::registerPhpFunctionNS — Registra una función PHP como una función XPath en un espacio de nombres
  - DOMXPath::registerPhpFunctions — Registra una función PHP como función XPath
- Dom\AdjacentPosition — La enumeración Dom\AdjacentPosition
- Dom\Attr — La clase Dom\Attr
  - Dom\Attr::isId — Verifica si el atributo es un identificador definido
  - Dom\Attr::rename — Cambia el nombre calificado o el espacio de nombres de un atributo
- Dom\CDATASection — La clase Dom\CDATASection
- Dom\CharacterData — La clase Dom\CharacterData
  - Dom\CharacterData::after — Añade nodos después de los datos
  - Dom\CharacterData::appendData — Añade la cadena al final de los datos en el nodo
  - Dom\CharacterData::before — Añade nodos antes de los datos de carácter
  - Dom\CharacterData::deleteData — Elimina un rango de caracteres de los datos de carácter
  - Dom\CharacterData::insertData — Inserta una cadena en el desplazamiento de punto de código UTF-8 especificado
  - Dom\CharacterData::remove — Elimina el nodo de datos de carácter
  - Dom\CharacterData::replaceData — Reemplaza una subcadena en los datos de carácter
  - Dom\CharacterData::replaceWith — Reemplaza los datos por nuevos nodos
  - Dom\CharacterData::substringData — Extrae un rango de datos de los datos de carácter
- Dom\ChildNode — La interfaz Dom\ChildNode
  - Dom\ChildNode::after — Añade nodos después del nodo
  - Dom\ChildNode::before — Añade nodos antes del nodo
  - Dom\ChildNode::remove — Elimina el nodo
  - Dom\ChildNode::replaceWith — Reemplaza el nodo por nuevos nodos
- Dom\Comment — La clase Dom\Comment
- Dom\Document — La clase Dom\Document
- Dom\DocumentFragment — La clase Dom\DocumentFragment
- Dom\DocumentType — La clase Dom\DocumentType
- Dom\DtdNamedNodeMap — La clase Dom\DtdNamedNodeMap
- Dom\Element — La clase Dom\Element
- Dom\Entity — La clase Dom\Entity
- Dom\EntityReference — La clase Dom\EntityReference
- Dom\HTMLCollection — La clase Dom\HTMLCollection
- Dom\HTMLDocument — La clase Dom\HTMLDocument
  - Dom\HTMLDocument::createEmpty — Crear un documento HTML vacío
  - Dom\HTMLDocument::createFromFile — Analiza un documento HTML a partir de un fichero
  - Dom\HTMLDocument::createFromString — Analiza un documento HTML a partir de un string
  - Dom\HTMLDocument::saveHtml — Serializa el documento como string HTML
  - Dom\HTMLDocument::saveHtmlFile — Serializa el documento en forma de fichero HTML
  - Dom\HTMLDocument::saveXml — Serializa el documento como un string XML
  - Dom\HTMLDocument::saveXmlFile — Serializa el documento en forma de fichero XML
- Dom\HTMLElement — La clase Dom\HTMLElement
- Dom\Implementation — La clase Dom\Implementation
- Dom\NamedNodeMap — La clase Dom\NamedNodeMap
- Dom\NamespaceInfo — La clase Dom\NamespaceInfo
- Dom\Node — La clase Dom\Node
- Dom\NodeList — La clase Dom\NodeList
- Dom\Notation — La clase Dom\Notation
- Dom\ParentNode — La interfaz Dom\ParentNode
  - Dom\ParentNode::append — Añade nodos después del último nodo hijo
  - Dom\ParentNode::prepend — Añade nodos antes del primer nodo hijo
  - Dom\ParentNode::querySelector — Devuelve el primer elemento que coincide con los selectores CSS
  - Dom\ParentNode::querySelectorAll — Devuelve una colección de elementos que coinciden con los selectores CSS
  - Dom\ParentNode::replaceChildren — Reemplaza los hijos en un nodo
- Dom\ProcessingInstruction — La clase Dom\ProcessingInstruction
- Dom\Text — La clase Dom\Text
  - Dom\Text::splitText — Rompe este nodo en dos nodos en el índice especificado
- Dom\TokenList — La clase Dom\TokenList
  - Dom\TokenList::add — Añade los tokens dados a la lista
  - Dom\TokenList::contains — Indica si la lista contiene un token dado
  - Dom\TokenList::count — Devuelve el número de tokens en la lista
  - Dom\TokenList::getIterator — Devuelve un iterador sobre la lista de tokens
  - Dom\TokenList::item — Devuelve un token de la lista
  - Dom\TokenList::remove — Elimina los tokens dados de la lista
  - Dom\TokenList::replace — Reemplaza un token en la lista por otro
  - Dom\TokenList::supports — Indica si el token dado es admitido
  - Dom\TokenList::toggle — Conmuta la presencia de un token en la lista
- Dom\XMLDocument — La clase Dom\XMLDocument
- Dom\XPath — La clase Dom\XPath
- DOM Funciones
  - dom_import_simplexml — Obtiene un objeto DOMAttr o DOMElement desde un objeto SimpleXMLElement
  - Dom\import_simplexml — Devuelve un objeto Dom\Attr o Dom\Element a partir de un objeto SimpleXMLElement

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open