xlthlx

I am not an early bird or a night owl. I am some form of permanently exhausted pigeon


Come leggere Feed RSS con PHP 5


21 Giugno 2010

Riporto un semplice esempio di utilizzo della funzione simplexml_load_file (solo per PHP 5) per fare un parser alternativo a MagpieRSS (che però ha il pregio di essere compatibile anche con altre versioni di PHP e di essere stato fatto apposta per i feed).
Spiegazione veloce del codice:
nel primo esempio, dati i parametri del link al feed e il numero di post che si vogliono recuperare, la funzione scrive la data, il titolo del post con l’url e il contenuto di un solo post dai feed di questo blog.

function get_post_from_rss($link,$items) {

	$simple = simplexml_load_file($link);
	
	for($i=0;$i< $items;$i+=1)  { 
		 $title = $simple->channel->item[$i]->title; 
		 $desc = $simple->channel->item[$i]->description; 
                 $content = $simple->channel->item[$i]->children("content", true); 
		 $data = $simple->channel->item[$i]->pubDate = date("d-m-Y",strtotime((string)($simple->channel->item[$i]->pubDate)));
		 $link = $simple->channel->item[$i]->link;
			 echo "$data
$title
n"; echo "$desc
n"; } } get_post_from_rss('http://mariaserenapiccioni.com/feed/',1)

Nel secondo esempio invece, dati i parametri del link al feed e il numero di post che si vogliono recuperare, la funzione ritorna un array con titolo, contenuto, data e url dei post, che in questo caso sono 10.

function get_post_from_rss($link,$items) {

	$simple = simplexml_load_file($link);
	$array = array();
	
	for($i=0;$i< $items;$i+=1)  { 
			 $array[$i]["title"]= $simple->channel->item[$i]->title; 
			 $array[$i]["desc"]= $simple->channel->item[$i]->description;
                         $array[$i]["content"]= $simple->channel->item[$i]->children("content", true);
			 $array[$i]["date"]= date("d/m/Y",strtotime((string)($simple->channel->item[$i]->pubDate)));
			 $array[$i]["link"]= $simple->channel->item[$i]->link;
	}
		 
	return $array;
	 
}

print_r (get_post_from_rss('http://mariaserenapiccioni.com/feed/',10));

How to read RSS feeds with PHP 5


21 June 2010

Here is a simple example of using the simplexml_load_file function (only for PHP 5) to make an alternative parser to MagpieRSS (which has the advantage of being compatible with other versions of PHP and having been made especially for feeds).
Quick explanation of the code:
in the first example, given the parameters of the link to the feed and the number of posts that you want to recover, the function writes the date, the title of the post with the URL and the content of a single post from the feeds of this blog.

function get_post_from_rss ($ link, $ items) {

$ simple = simplexml_load_file ($ link);

for ($ i = 0; $ i <$ items; $ i + = 1) { $ title = $ simple-> channel-> item [$ i] -> title;
$ desc = $ simple-> channel-> item [$ i] -> description;
                 $ content = $ simple-> channel-> item [$ i] -> children (“content”, true);
$ data = $ simple-> channel-> item [$ i] -> pubDate = date (“d-m-Y”, strtotime ((string) ($ simple-> channel-> item [$ i] -> pubDate)));
$ link = $ simple-> channel-> item [$ i] -> link;
echo “$ date
$ title
n”;
echo “$ desc
n”;
}
}

get_post_from_rss ( ‘http://mariaserenapiccioni.com/feed/’,1)

In the second example instead, given the parameters of the link to the feed and the number of posts to be recovered, the function returns an array with the title, content, date and url of the posts, which in this case are 10.

function get_post_from_rss ($ link, $ items) {

$ simple = simplexml_load_file ($ link);
$ array = array ();

for ($ i = 0; $ i <$ items; $ i + = 1) { $ array [$ i] ["title"] = $ simple-> channel-> item [$ i] -> title;
$ array [$ i] [“desc”] = $ simple-> channel-> item [$ i] -> description;
                         $ array [$ i] [“content”] = $ simple-> channel-> item [$ i] -> children (“content”, true);
$ array [$ i] [“date”] = date (“d / m / Y”, strtotime ((string) ($ simple-> channel-> item [$ i] -> pubDate)));
$ array [$ i] [“link”] = $ simple-> channel-> item [$ i] -> link;
}

return $ array;

}

print_r (get_post_from_rss (‘http://mariaserenapiccioni.com/feed/’,10));

Commenta

Utilizzando questo blog, accetti l'utilizzo dei cookie. Maggiori informazioni

Questo sito utilizza i cookie per fornire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o cliccando su "Accetta" permetti il loro utilizzo.

Chiudi