Carregar um RSS remoto com PHP

Tutorial para carregar com PHP um arquivo RSS de um servidor remoto e armazenar os dados em um array, utilizando a biblioteca PHP Last RSS.

Por Miguel Angel Alvarez - Tradução de JML


Publicado em: 26/4/10
Valorize este artigo:
Neste artigo vamos mostrar uma maneira muito simples de acessar com PHP aos dados que há em um arquivo remoto com codificação RSS e salvá-los em um array, que logo poderemos utilizar para mostrar o conteúdo do RSS como necessitemos com comodidade.

Como sabemos, RSS é um formato para armazenar a informação baseada em XML. Na verdade, PHP dispõe de diversos modos de acesso e interpretação de documentos XML, mas para falar a verdade, para casos simples como o que mostramos, podemos encontrar opções mais fáceis.

Se o que necessitamos é ler um arquivo RSS que há em um servidor remoto e mostrar o conteúdo em uma página web, existem ferramentas que podem nos ajudar trazendo um pouco de simplicidade a nossa programação. Estas se encarregam de fazer o trabalho complicado por nós e nos facilitar os dados do RSS em uma estrutura mais simples de manejar para programadores menos experimentados. Neste artigo, usaremos uma biblioteca chamada Last RSS.

RSS Parser: Last RSS

A biblioteca Last RSS é um simples intérprete de RSS que resultará muito adequado para nossos interesses. Inclui uma pequena classe (de programação orientada a objetos) que tem as funcionalidades necessárias para se conetar a uma URL, para receber um RSS, e convertê-lo em um array associativo onde se encontrarão todos os dados contidos no arquivo.

Podemos acessar e baixar Last RSS em: http://lastrss.oslab.net

Na página da biblioteca acessaremos o download da última versão e uma documentação que se completa com diversos exemplos de uso dos que poderemos extrair mais pistas para sua utilização.

Exemplo de carregamento de um RSS com PHP

Agora vejamos um simples exemplo de uso desta biblioteca para realizar a leitura de um RSS e mostrar seu conteúdo.

O modo de uso geral é instanciar um objeto da classe lastRSS, configurar as opções que desejarmos no objeto, trazer e interpretar um RSS de uma URL determinada e receber como resposta um array associativo.

Neste primeiro exemplo vamos simplificar todo o processo ao máximo e simplesmente mostraremos o conteúdo do array resultado de interpretar o XML do RSS com a função print_r() de PHP.

<?php
//Incluir a biblioteca lastRSS
include "./lastRSS.php";

//Criamos o objeto lastRSS
$rss = new lastRSS;

//Mudo as variáveis de configuração do objeto lastRSS
//Evito cache
$rss->cache_dir = '';
$rss->cache_time = 0;
//Jogo de caracteres padrão a ISO-8859-1 (senão, seria UTF-8)
$rss->cp = 'ISO-8859-1';
//Mudo o formato de datas a português
$rss->date_format = 'd/m/Y';

//URL do RSS a receber
$rssurl = "http://www.criarweb.com/rss/geral_rss.php";

if ($rs = $rss->get($rssurl)) {
echo '<pre>';
print_r($rs);
echo '</pre>';
}
else {
echo "Error: não se pode receber $rssurl...";
}
?>

O código está comentado para que se possa entender facilmente.

Espero que esta primeira aproximação à consulta e interpretação de um RSS remoto possa servir para resolver problemas mais complexos que possam encontrar. Nos próximos artigos veremos exemplos PHP um pouco mais elaborados e explicaremos mais sobre a biblioteca Last RSS.






Usuários :    login / registro

Manuais relacionados
Categorias relacionadas
O autor

Home | Sobre nós | Copyright | Anuncie | Entrar em contato