Lendo um Arquivo xml com PHP.
Bem primeiramente considerem o seguinte codigo xml como o contido na url:
Bem agora vamos pegar o xml pela url e atribuir á uma váriavel.
Agora pegamos a variavel $filename e jogamos seu conteudo para uma 'string' $xmlstr
Usaremos a extensão DOM do php para manipular o xml.
Poderiamos usar um foreach agora, mas como meu xml é simples e não tem várias repetições ultilizaremos apenas sua chamada.
Podemos ler seus valores da seguinte forma:
por ex: para ler o Titulo colocariamos:
e assim por diante,
espero que tenham gostado e até a próxima.
http://wwww.seusite.com.br/suporte.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<suporte>
<conteudo>
<title>
Suporte - Joaozinho.
</title>
<descricao>
Pensando em comodidade, excelência e qualidade de atendimento, a .....
</descricao>
<contato>
<email>
teste@lal.com.br
</email>
<skype>
suporte.lala
</skype>
<telefone>
(66) 5555-4444
</telefone>
</contato>
<aviso>
Aviso: Qualquer duvida em relação ao gestor, entre em contato com nosso Suporte:
teste@lalal.com.br
</aviso>
<ultima>
Estamos com várias promoções de Criação de Sites, para mais informações entrem contato
</ultima>
</conteudo>
</suporte>
Bem agora vamos pegar o xml pela url e atribuir á uma váriavel.
//Pegando url e atribuindo para a váriavel filename
$filename="http://seusite.com.br/suporte.xml";
Agora pegamos a variavel $filename e jogamos seu conteudo para uma 'string' $xmlstr
//file_get_contents -> Lê todo o conteúdo de um arquivo para uma string;
//Jogando o filename para uma string.
$xmlstr = file_get_contents($filename);
Usaremos a extensão DOM do php para manipular o xml.
// * Instância a classe, e carrega o XML que está na 'string'.
$dom = new domDocument();
$dom->loadXML($xmlstr);
$xml = simplexml_import_dom($dom); //Recebe um objeto SimpleXMLElement de um nó DOM.
Podemos ler seus valores da seguinte forma:
//exibe o email dentro do nó contato que por sua vez está dentro do nó de conteudo.
$xml->conteudo->contato->email;
por ex: para ler o Titulo colocariamos:
$xml->conteudo->title;
espero que tenham gostado e até a próxima.

Gregory Iyama, é só fazer o foreach no xml.
26/02/2016 11:56am
(~9 anos atrás)
Olá Fernando Henrique Silva Ferreira,
achei da hr, mas e qnd tiver mais d uma tag contato?
por exemplo, eu quero dar um echo no email do segundo contato, como faz?
abracos!
achei da hr, mas e qnd tiver mais d uma tag contato?
por exemplo, eu quero dar um echo no email do segundo contato, como faz?
abracos!
26/02/2016 9:53am
(~9 anos atrás)
Querendo saber mais sobre geração e manipulação de arquivos XML com PHP
Visitem este blog
http://dofaridfr.blogspot.com.br/
Lé tem ótimos exemplos práticos e explicações de como utilizar a biblioteca SimpleXML
Visitem este blog
http://dofaridfr.blogspot.com.br/
Lé tem ótimos exemplos práticos e explicações de como utilizar a biblioteca SimpleXML
03/08/2013 12:46pm
(~12 anos atrás)