Não entenda a saída em Entidades XML e PHP SimpleXMLElement
Eu uso entidades em XML e não entendo meus resultados.
Eu tenho um arquivo XML que chama uma entidade externa, isso é config.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE config [
<!ENTITY totalInstances SYSTEM "totalInstances.xml">
]>
<config>
&totalInstances;
</config>
Aqui está o arquivo totalInstances.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<totalInstances>
<nombre>45</nombre>
</totalInstances>
Então no PHP eu carrego o arquivo config.xml com a ajuda da classe SimpleXMLElement:
$config = simplexml_load_file('config.xml');
Então eu saio a variável $ config com um var_dump, e aqui está a coisa que eu não entendo:
object(SimpleXMLElement)[3]
public 'totalInstances' =>
object(SimpleXMLElement)[5]
public 'totalInstances' =>
object(SimpleXMLElement)[6]
public 'totalInstances' =>
object(SimpleXMLElement)[8]
public 'nombre' => string '45' (length=2)
Eu esperava ter um simples nó "totalInstances" que contém o nó "nombre". O que acontece ? Te agradece.
editar : Para mais detalhes, eu não entendo por que eu recebo três objetos chamados "totalInstances", enquanto há apenas um no arquivo totalInstances.xml? Eu esperava ter essa saída:
object(SimpleXMLElement)[3]
public 'totalInstances' =>
object(SimpleXMLElement)[8]
public 'nombre' => string '45' (length=2)
Além disso, não tenho certeza de entender o que significa o número entre o "[]" na saída.