Wprowadzenie do Zend Framework

     Nauka Zend Framework

    appendix

     Przewodnik po 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 21.3% Update 2011-11-16 - Revision 24356 - Version ZF 1.11.x

    Rozdział 30. Zend_Feed

    30.1. Wprowadzenie

    Zend_Feed zapewnia funkcjonalność umożliwiającą przetwarzanie kanałów informacyjnych RSS oraz Atom. Zapewnia ona naturalną składnię umożliwiającą dostęp do elementów kanałów informacyjnych, ich atrybutów oraz atrybutów samych wpisów. Zend_Feed daje także obszerne wsparcie w modyfikowaniu kanałów i struktury wpisów w ten sam naturalny sposób i umożliwia zapisanie rezultatów jako XML. W przyszłości klasa ma zapewnić obsługę protokołu publikowania Atom (Atom Publishing Protocol).

    Programowo Zend_Feed składa się z bazowej klasy Zend_Feed, abstrakcyjnych klas Zend_Feed_Abstract oraz Zend_Feed_Entry_Abstract reprezentujących kanały informacyjne i ich wpisy, specyficznych implementacji kanałów i wpisów dla RSS i Atom, oraz z pomocników odpowiedzialnych za naturalną składnię.

    W przykładzie poniżej pokazujemy prosty przykład odbierania danych RSS i zapisywania potrzebnych części danych kanału do prostej tablicy PHP, która może być potem użyta do wyświetlenia danych, zapisania ich do bazy danych itp.

    [Notatka] Bądż ostrożny

    Wiele kanałów RSS ma dostępne różne właściwości samego kanału i jego elementów. Specyfikacja RSS umożliwia użycie wielu opcjonalnych parametrów, więc bądź ostrożny gdy będziesz pisał kod pracujący z RSS.

    Przykład 30.1. Użycie Zend_Feed do pobierania danych RSS

    // Ściągamy najnowsze nagłówki ze Slashdot
    try {
        
    $slashdotRss =
            
    Zend_Feed::import('http://rss.slashdot.org/Slashdot/slashdot');
    } catch (
    Zend_Feed_Exception $e) {
        
    // importowanie danych nie udało się
        
    echo "Exception caught importing feed: {$e->getMessage()}\n";
        exit;
    }

    // inicjalizacja tablicy z danymi kanału
    $channel = array(
        
    'title'       => $slashdotRss->title(),
        
    'link'        => $slashdotRss->link(),
        
    'description' => $slashdotRss->description(),
        
    'items'       => array()
        );

    // Pętla po każdym elemencie kanału i zapisanie potrzebnych danych
    foreach ($slashdotRss as $item) {
        
    $channel['items'][] = array(
            
    'title'       => $item->title(),
            
    'link'        => $item->link(),
            
    'description' => $item->description()
            );
    }

    digg delicious meneame google twitter technorati facebook

    Comments

    Loading...