Começaremos criando um arquivo XML bem simples, escreva o código abaixo e salve como:
livros.xml
[xml]
Agora que já temos o XML vamos criar o arquivo PHP, salve-o com o nome que quiser.
index.php
[php]
#define o encoding do cabeçalho para utf-8
@header('Content-Type: text/html; charset=utf-8');
#carrega o arquivo XML e retornando um Array
$xml = simplexml_load_file("livros.xml");
# se o xml for um link e nao um arquivo como livros.xml, troque -o pelo link ex.
# $xml = simplexml_load_file("http://endereco/link/mesmoQueNaoTenhaExtensaoXML/");
#para cada nó LIVRO atribui à variavel $livro (obj simplexml)
foreach($xml->livro as $livro)
{
echo $livro->cod;
#usando o utf8_decode para exibir com acentos
echo $livro->titulo;
echo $livro->autor;
echo $livro->descricao;
echo $livro->preco;
echo “
“;
}
?>
[/php]
Muito simples! O nome do método não é em vão!
Bem, agora basta você formatar a saida dos dados, utilize tags html formatadas com CSS, um exemplo pode ser como abaixo:
echo “
Título: “ .$livro->titulo . “
”;
Como está no comentário no código, a função simplexml_load_file carrega um arquivo XML retornando seu conteúdo em um Array, se quiser ver o formato desse array criado pela função e atribuído à variável $xml, utilize a função do PHP print_r que serve para exibir um array na tela. O resultado será como mostrado abaixo:
O comando print_r($xml) resultará em:
[php]
SimpleXMLElement Object
(
[livro] => Array
(
[0] => SimpleXMLElement Object
(
[cod] => 01
[titulo] => PHP para iniciantes
[descricao] => Desenvolvendo Aplicações web
[autor] => Manuel da Silva
[paginas] => 200
[preco] => 5.00
)
[1] => SimpleXMLElement Object
(
[cod] => 02
[titulo] => XML
[descricao] => Usando XML com PHP
[autor] => José das Couves
[paginas] => 100
[preco] => 15.00
)
[2] => SimpleXMLElement Object
(
[cod] => 03
[titulo] => Javascript
[descricao] => O Poder do javascript
[autor] => Billy Borny
[paginas] => 80
[preco] => 9.90
)
)
)
[/php]
Links:
Documentação do SimpleXML: SimpleXML
Fonte: http://clares.com.br/2008/08/17/ler-xml-com-php/
OBS: Para os casos em que haja tags do XML com Hifen “-” faze-se assim para exibí-lo :
digamos que temos a tag [php](