Programmer's Reference Guide
| Obtenir des flux à partir de pages web |
Consommer un flux RSS
Lire un flux RSS se résume à instancier un objet
Zend_Feed_Rss en passant l'URL du flux :
<?php
$canal = new Zend_Feed_Rss('http://rss.exemple.com/nomDuCanal');
Zend_Feed_Exception sera déclenchée.
Une fois que vous disposez d'un objet "flux RSS", vous pouvez accéder aux propriétés RSS standard du canal, et ce directement à partir de l'objet :
<?php
echo $canal->title();
Zend_Feed
utilise une convention selon laquelle les propriétés sont traitées comme
des objets XML si elles sont demandées au moyen de la syntaxe
$obj->propriété et comme des chaînes si elles sont
demandées au moyen de la syntaxe $obj->propriété(). Ceci
permet d'accéder à la totalité du contenu textuel d'un nœud particulier
tout comme à l'ensemble des enfants de ce nœud.
Si les propriétés du canal possèdent des attributs, ils sont accessibles à l'aide de l'indiçage PHP :
<?php
echo $canal->category['domain'];
$obj->propriété['attribut']() n'est pas nécessaire pour
accéder aux valeurs des attributs.
La plupart du temps vous voudrez itérer sur le flux et réaliser quelque
chose avec ses entrées. Zend_Feed_Abstract implémente
l'interface iterator de PHP, ce qui résume au code suivant
l'affichage des titres de tous les articles du canal :
<?php
foreach ($canal as $elem) {
echo $elem->title() . "\n";
}
Les éléments requis pour les canaux sont :
-
title(titre) - Le nom du canal -
link(lien) - L'URL du site web correspondant au canal -
description- Une ou plusieurs phrases décrivant le canal
Les éléments optionnels pour les canaux sont :
-
pubDate(date de publication) - La date de publication de l'ensemble, au format RFC 822 -
language(langue) - La langue dans laquelle est écrit le canal -
category(catégorie) - Un ou plusieurs noms de catégorie (spécifiés au moyen de plusieurs balises) auquel appartient le canal
Les éléments RSS <item> n'ont pas d'éléments requis particulier. Cependant soit
title soit description doivent être présents.
Les éléments communs sont :
-
title(titre) - Le titre de l'élément -
link(lien) - L'URL de l'élément -
description- Un résumé de l'élément -
author(auteur) - L'adresse e-mail de l'auteur -
category(catégorie) - Une ou plusieurs catégories auquel appartient l'élément -
comments(commentaires) - L'URL des commentaires relatifs à cet élément -
pubDate(date de publication) - La date à laquelle l'élément a été publié, au format RFC 822
Dans votre code vous pouvez toujours tester si un élément est non-vide au moyen du test suivant :
<?php
if ($elemt->nomPropriete()) {
// ... traitement
}
Si vous utilisez à la place de la condition
$elem->nomPropriete, vous obtiendrez toujours un objet qui,
même vide, sera évalué comme TRUE, donc le test échouera.
Pour plus d'informations, la spécification RSS 2.0 officielle est disponible à l'adresse : » http://blogs.law.harvard.edu/tech/rss
| Obtenir des flux à partir de pages web |
Select a Version
Languages Available
Components
Search the Manual
Navigation
- Guide de référence du programmeur
- Guide de référence du programmeur
- Zend_Feed
- Introduction
- Importer des flux
- Obtenir des flux à partir de pages web
- Consommer un flux RSS
- Consommer un flux Atom
- Consommer une entrée Atom particulière
- Modifier la structure du flux ou des entrées
- Classes personnalisées pour les flux et entrées
