Files
archived-doc-pt-br/reference/dom/domdocument.xml
2024-12-01 10:03:01 -03:00

477 lines
17 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: d75a54118772b34c7a538962ac5f994900c99690 Maintainer: leonardolara Status: ready --><!-- CREDITS: fernandowobeto,leonardolara -->
<reference xml:id="class.domdocument" role="class" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>A classe DOMDocument</title>
<titleabbrev>DOMDocument</titleabbrev>
<partintro>
<!-- {{{ DOMDocument intro -->
<section xml:id="domdocument.intro">
&reftitle.intro;
<para>
Representa um documento HTML ou XML inteiro; serve como a raiz da árvore do
documento.
</para>
</section>
<!-- }}} -->
<section xml:id="domdocument.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis class="class">
<ooclass>
<classname>DOMDocument</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>DOMNode</classname>
</ooclass>
<oointerface>
<modifier>implements</modifier>
<interfacename>DOMParentNode</interfacename>
</oointerface>
<classsynopsisinfo role="comment">&InheritedConstants;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.domnode')/db:partintro/db:section/db:classsynopsis/db:fieldsynopsis[preceding-sibling::db:classsynopsisinfo[1][@role='comment' and text()='&Constants;']]))">
<xi:fallback/>
</xi:include>
<classsynopsisinfo role="comment">&Properties;</classsynopsisinfo>
<fieldsynopsis>
<modifier>public</modifier>
<modifier>readonly</modifier>
<type class="union"><type>DOMDocumentType</type><type>null</type></type>
<varname linkend="domdocument.props.doctype">doctype</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<modifier>readonly</modifier>
<type>DOMImplementation</type>
<varname linkend="domdocument.props.implementation">implementation</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<modifier>readonly</modifier>
<type class="union"><type>DOMElement</type><type>null</type></type>
<varname linkend="domdocument.props.documentelement">documentElement</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<modifier>readonly</modifier>
<type class="union"><type>string</type><type>null</type></type>
<varname linkend="domdocument.props.actualencoding">actualEncoding</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type class="union"><type>string</type><type>null</type></type>
<varname linkend="domdocument.props.encoding">encoding</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<modifier>readonly</modifier>
<type class="union"><type>string</type><type>null</type></type>
<varname linkend="domdocument.props.xmlencoding">xmlEncoding</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>bool</type>
<varname linkend="domdocument.props.standalone">standalone</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>bool</type>
<varname linkend="domdocument.props.xmlstandalone">xmlStandalone</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type class="union"><type>string</type><type>null</type></type>
<varname linkend="domdocument.props.version">version</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type class="union"><type>string</type><type>null</type></type>
<varname linkend="domdocument.props.xmlversion">xmlVersion</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>bool</type>
<varname linkend="domdocument.props.stricterrorchecking">strictErrorChecking</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type class="union"><type>string</type><type>null</type></type>
<varname linkend="domdocument.props.documenturi">documentURI</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<modifier>readonly</modifier>
<type>mixed</type>
<varname linkend="domdocument.props.config">config</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>bool</type>
<varname linkend="domdocument.props.formatoutput">formatOutput</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>bool</type>
<varname linkend="domdocument.props.validateonparse">validateOnParse</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>bool</type>
<varname linkend="domdocument.props.resolveexternals">resolveExternals</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>bool</type>
<varname linkend="domdocument.props.preservewhitespace">preserveWhiteSpace</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>bool</type>
<varname linkend="domdocument.props.recover">recover</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<type>bool</type>
<varname linkend="domdocument.props.substituteentities">substituteEntities</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<modifier>readonly</modifier>
<type class="union"><type>DOMElement</type><type>null</type></type>
<varname linkend="domdocument.props.firstelementchild">firstElementChild</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<modifier>readonly</modifier>
<type class="union"><type>DOMElement</type><type>null</type></type>
<varname linkend="domdocument.props.lastelementchild">lastElementChild</varname>
</fieldsynopsis>
<fieldsynopsis>
<modifier>public</modifier>
<modifier>readonly</modifier>
<type>int</type>
<varname linkend="domdocument.props.childelementcount">childElementCount</varname>
</fieldsynopsis>
<classsynopsisinfo role="comment">&InheritedProperties;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.domnode')/db:partintro/db:section/db:classsynopsis/db:fieldsynopsis[preceding-sibling::db:classsynopsisinfo[1][@role='comment' and text()='&Properties;']]))">
<xi:fallback/>
</xi:include>
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.domdocument')/db:refentry/db:refsect1[@role='description']/descendant::db:constructorsynopsis[@role='DOMDocument'])">
<xi:fallback/>
</xi:include>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.domdocument')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[@role='DOMDocument'])">
<xi:fallback/>
</xi:include>
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.domnode')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[@role='DOMNode'])">
<xi:fallback/>
</xi:include>
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ DOMDocument properties -->
<section xml:id="domdocument.props">
&reftitle.properties;
<variablelist>
<varlistentry xml:id="domdocument.props.actualencoding">
<term><varname>actualEncoding</varname></term>
<listitem>
<para>
<emphasis>Descontinuado a partir do PHP 8.4.0</emphasis>.
Codificação real do documento, é uma equivalente somente-leitura de
<varname linkend="domdocument.props.encoding">encoding</varname>.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.childelementcount">
<term><varname>childElementCount</varname></term>
<listitem>
<para>O número de elementos filhos.</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.config">
<term><varname>config</varname></term>
<listitem>
<para>
<emphasis>Descontinuado a partir do PHP 8.4.0</emphasis>.
Configuração usada quando
<function>DOMDocument::normalizeDocument</function> é
invocada.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.doctype">
<term><varname>doctype</varname></term>
<listitem>
<para>A Declaração de Tipo de Documento associada a este documento.</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.documentelement">
<term><varname>documentElement</varname></term>
<listitem>
<para>
O objeto <classname>DOMElement</classname> que é o primeiro
elemento do documento. Se não encontrado, é avaliado como &null;.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.documenturi">
<term><varname>documentURI</varname></term>
<listitem>
<para>A localização do documento ou &null; se indefinido.</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.encoding">
<term><varname>encoding</varname></term>
<listitem>
<para>
Codificação do documento, conforme especificado pela declaração XML. Este
atributo não está presente na especificação final do DOM Nível 3, mas
é a única maneira de manipular a codificação do documento XML nesta
implementação.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.firstelementchild">
<term><varname>firstElementChild</varname></term>
<listitem>
<para>Primeiro elemento filho ou &null;.</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.formatoutput">
<term><varname>formatOutput</varname></term>
<listitem>
<para>
Formata a saída com espaçamento e recuo adicionais.
Isso não tem efeito se o documento foi carregado com
<varname linkend="domdocument.props.preservewhitespace">preserveWhitespace</varname> habilitado.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.implementation">
<term><varname>implementation</varname></term>
<listitem>
<para>
O objeto <classname>DOMImplementation</classname> que manipula
este documento.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.lastelementchild">
<term><varname>lastElementChild</varname></term>
<listitem>
<para>Último elemento filho ou &null;.</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.preservewhitespace">
<term><varname>preserveWhiteSpace</varname></term>
<listitem>
<para>
Não remover espaços em branco redundantes. O padrão é &true;.
Definir isso como &false; tem o mesmo efeito que passar <constant>LIBXML_NOBLANKS</constant>
como <parameter>option</parameter> para <methodname>DOMDocument::load</methodname> etc.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.recover">
<term><varname>recover</varname></term>
<listitem>
<para>
<emphasis>Proprietário</emphasis>. Ativa o modo de recuperação, ou seja, tenta
analisar documentos mal formados. Este atributo não faz parte da
especificação DOM e é específico para o libxml.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.resolveexternals">
<term><varname>resolveExternals</varname></term>
<listitem>
<para>
Configure como &true; para carregar entidades externas de uma declaração de tipo de
documento (doctype). Isso é útil para incluir entidades de caracteres em
seu documento XML.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.standalone">
<term><varname>standalone</varname></term>
<listitem>
<para>
<emphasis>Descontinuado</emphasis>. Se o documento é
ou não independente, conforme especificado pela declaração XML, corresponde a
<varname linkend="domdocument.props.xmlstandalone">xmlStandalone</varname>.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.stricterrorchecking">
<term><varname>strictErrorChecking</varname></term>
<listitem>
<para>Lança <classname>DOMException</classname> em caso de erro. Padrão é &true;.</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.substituteentities">
<term><varname>substituteEntities</varname></term>
<listitem>
<para>
<emphasis>Proprietário</emphasis>. Informa de entidades devem ou não
ser subtituídas. Este atributo não faz parte da
especificação DOM e é específico para o libxml. Padrão é &false;.
</para>
<caution>
<simpara>
A ativação da substituição de entidades pode facilitar ataques de XML External Entity (XXE).
</simpara>
</caution>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.validateonparse">
<term><varname>validateOnParse</varname></term>
<listitem>
<para>Carrega e valida em relação ao DTD. Padrão é &false;.</para>
<caution>
<simpara>
Ativar a validação do DTD pode facilitar ataques de XML External Entity (XXE).
</simpara>
</caution>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.version">
<term><varname>version</varname></term>
<listitem>
<para>
<emphasis>Descontinuado</emphasis>. Versão do XML, corresponde a
<varname linkend="domdocument.props.xmlversion">xmlVersion</varname>.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.xmlencoding">
<term><varname>xmlEncoding</varname></term>
<listitem>
<para>
Um atributo especificando, como parte da declaração XML, a
codificação deste documento. Isso é &null; quando não especificado ou quando
não é conhecido, como quando o Documento foi criado na memória.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.xmlstandalone">
<term><varname>xmlStandalone</varname></term>
<listitem>
<para>
Um atributo que especifica, como parte da declaração XML, se
este documento é independente.
Isso é &false; quando não especificado.
Um documento independente é aquele que não possui declarações de marcações externas.
Um exemplo de tal declaração de marcação é quando o DTD declara um atributo com um valor padrão.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="domdocument.props.xmlversion">
<term><varname>xmlVersion</varname></term>
<listitem>
<para>
Um atributo que especifica, como parte da declaração XML, o
número da versão deste documento. Se não houver declaração e se
este documento suportar o recurso "XML", o valor é "1.0".
</para>
</listitem>
</varlistentry>
</variablelist>
</section>
<!-- }}} -->
<section role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.4.0</entry>
<entry>
<varname>actualEncoding</varname> e
<varname>config</varname> agora estão formalmente descontinuados.
</entry>
</row>
<row>
<entry>8.0.0</entry>
<entry>
<classname>DOMDocument</classname> agora implementa
<interfacename>DOMParentNode</interfacename>.
</entry>
</row>
<row>
<entry>8.0.0</entry>
<entry>
O método não implementado <methodname>DOMDocument::renameNode</methodname>
foi removido.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</section>
<!-- {{{ Notes -->
<section role="notes">
&reftitle.notes;
&dom.note.utf8;
&dom.note.json;
</section>
<!-- }}} -->
<!-- {{{ See also -->
<section role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><link xlink:href="&url.spec.dom3.document;">Especificação do W3C para Documento.</link></member>
</simplelist>
</para>
</section>
<!-- }}} -->
</partintro>
&reference.dom.entities.domdocument;
</reference>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->