Introduction au Zend Framework

 Apprendre Zend Framework

appendix

 Guide de référence Zend Framework


  •  Zend_Gdata
  •  Zend_Http
  •  Zend_InfoCard
  •  Zend_Json
  •  Zend_Layout
  •  Zend_Ldap
  •  Zend_Loader
  •  Zend_Locale
  •  Zend_Log
  •  Zend_Mail
  •  Zend_Markup
  •  Zend_Measure
  •  Zend_Memory
  •  Zend_Mime
  •  Zend_Navigation
  •  Zend_Oauth
  •  Zend_OpenId
  •  Zend_Paginator
  •  Zend_Pdf
  •  Zend_ProgressBar
  •  Zend_Queue
  •  Zend_Reflection
  •  Zend_Registry
  •  Zend_Rest

  •  Zend_Search_Lucene
  •  Zend_Serializer
  •  Zend_Server
  •  Zend_Service
  •  Zend_Session
  •  Zend_Soap
  •  Zend_Tag
  •  Zend_Test
  •  Zend_Text
  •  Zend_TimeSync
  •  Zend_Tool
  •  Zend_Tool_Framework
  •  Zend_Tool_Project
  •  Zend_Translate
  •  Zend_Uri
  •  Zend_Validate
  •  Zend_Version
  •  Zend_View
  •  Zend_Wildfire
  •  Zend_XmlRpc
  • ZendX_Console_Process_Unix
  • ZendX_JQuery
  • Translation 61.2% Update 2010-11-28 - Revision 23149 - Version ZF 1.11.x

    Chapitre 32. Zend_Feed

    32.1. Introduction

    Le composant Zend_Feed offre des services permettant de traiter des flux RSS et Atom. Il permet d'accéder aux éléments d'un flux, aux attributs d'un flux et aux attributs des entrées d'un flux, tout cela au moyen d'une syntaxe intuitive. Zend_Feed prend aussi complètement en charge la modification de la structure des flux et des entrées, avec la même syntaxe intuitive que précédemment, et il sait transformer le résultat en XML. À l'avenir, la prise en charge des modifications pourrait aussi inclure la prise en charge du protocole de publication Atom.

    Sur le plan de la programmation, Zend_Feed est constitué d'une classe de base Zend_Feed et de classes de base abstraites Zend_Feed_Abstract et Zend_Feed_Entry_Abstract, permettant de représenter respectivement des flux et des entrées ; Zend_Feed contient aussi des implémentations particulières de ces classes abstraites pour les flux et entrées RSS et Atom ainsi qu'un assistant en coulisses qui assure le bon fonctionnement de la syntaxe intuitive.

    Dans l'exemple ci-dessous, nous illustrons une utilisation simple de Zend_Feed : on obtient un flux RSS et on enregistre les portions du flux qui nous intéressent dans un tableau PHP simple, qui pourra ensuite être utilisé pour afficher les données, les stocker dans une base de données etc.

    [Note] Attention

    Beaucoup de flux RSS ont à leur disposition différentes propriétés, pour les canaux comme pour les éléments. La spécification RSS spécifie beaucoup de propriétés optionnelles et gardez donc cela à l'esprit lorsque vous écrivez du code qui manipule des données RSS.

    Exemple 32.1. Manipuler des données RSS avec Zend_Feed

    // on va chercher les dernières news de Slashdot
    try {
        
    $rssSlashdot =
    Zend_Feed::import('http://rss.slashdot.org/Slashdot/slashdot');
    } catch (
    Zend_Feed_Exception $e) {
        
    // l'importation du flux a échoué
        
    echo "Une exception a été interceptée lors de l'importation "
           
    "du flux : {$e->getMessage()}\n";
        exit;
    }

    // on initialise un tableau contenant les données du canal RSS
    $canal = array(
        
    'titre'       => $rssSlashdot->title(),
        
    'lien'        => $rssSlashdot->link(),
        
    'description' => $rssSlashdot->description(),
        
    'elements'    => array()
        );

    // on itère sur chaque élément du canal et
    // on stocke les données qui nous intéressent
    foreach ($rssSlashdot as $elem) {
        
    $canal['elements'][] = array(
            
    'titre'       => $elem->title(),
            
    'lien'        => $elem->link(),
            
    'description' => $elem->description()
            );
    }

    digg delicious meneame google twitter technorati facebook

    Comments

    Loading...