Lendo arquivos XML com PHP

Nesse artigo é possível aprender a como ler arquivos XML internos e externos usando a linguagem PHP.

Olá pessoal, nesse artigo irei mostrar como ler arquivos XML internos e externos com PHP. Usaremos um arquivo XML externo do site da DevMedia.

Os passos de nosso exemplo são os seguintes:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Notícias Dev Media</title> </head> <body> <h1>Notícias Dev Media</h1> <?php $link = "https://www.devmedia.com.br/xml/devmedia_full.xml"; //link do arquivo xml $xml = simplexml_load_file($link) -> channel; //carrega o arquivo XML e retornando um Array foreach($xml -> item as $item){ //faz o loop nas tag com o nome "item" //exibe o valor das tags que estão dentro da tag "item" //utilizamos a função "utf8_decode" para exibir os caracteres corretamente echo "<strong>Título:</strong> " .utf8_decode($item -> title)."<br />"; echo "<strong>Link:</strong> " .utf8_decode($item -> link)."<br />"; echo "<strong>Descrição:</strong> " .utf8_decode($item -> description)."<br />"; echo "<strong>Autor:</strong> " .utf8_decode($item -> author)."<br />"; echo "<strong>Data:</strong> " .utf8_decode($item -> pubDate)."<br />"; echo "<br />"; } //fim do foreach ?> </body> </html>
Nota: Em seu servidor é obrigatório que a função "allow_url_fopen" esteja habilitada. Caso não esteja, crie o arquivo "php.ini" na pasta onde esteja o script do nosso exemplo e coloque o seguinte código:
allow_url_fopen = On

Lembrando que o foreach foi adaptado para ler as tags do arquivo XML do exemplo, caso as tags estiverem com nome diferente você deverá ter que adaptá-las.

Artigos relacionados