Á¦10 Àå Zend_Feed

¸ñÂ÷

10.1. µµÀÔ
10.2. Zend_Feed ¿¡ ÀÇÇÑ ÇǵåÀÇ Àбâ
10.3. À¥ÆäÀÌÁö·ÎºÎÅÍÀÇ ÇǵåÀÇ Ãëµæ
10.4. RSS ÇǵåÀÇ »ç¿ë
10.5. Atom ÇǵåÀÇ »ç¿ë
10.6. ´ÜÀÏÀÇ Atom ¿£Æ®¸®ÀÇ Ã³¸®
10.7. ÇÇµå ¹× ¿£Æ®¸®ÀÇ ±¸Á¶ÀÇ º¯°æ
10.8. µ¶ÀÚÀûÀÎ Çǵå Ŭ·¡½º ¹× ¿£Æ®¸® Ŭ·¡½º

10.1. µµÀÔ

Zend_Feed (Àº)´Â,RSS (ÀÌ)³ª Atom ÀÇ Çǵ带 Ãë±ÞÇÏ´Â ±â´ÉÀ» Á¦°øÇÕ´Ï´Ù. ÇǵåÀÇ ¿ä¼Ò³ª ¼Ó¼º, ±×¸®°í ¿£Æ®¸®ÀÇ ¼Ó¼º¿¡, ÀÚ¿¬½º·¯¿î ¹æ¹ýÀ¸·Î ¾×¼¼½º ÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù. ¶Ç,Zend_Feed ±×¸®°í Çǵ峪 ¿£Æ®¸®ÀÇ ±¸Á¶¸¦ º¯°æÇØ, ±× °á°ú¸¦ XML ¿¡ ½á µÇµ¹¸°´Ù°í ÇÏ´Â È®Àå ±â´Éµµ ÀÖ½À´Ï´Ù.Àå·¡ÀûÀ¸·Î´Â Atom Publishig Protocol (AtomPP) ¿¡µµ ´ëÀÀ½Ãų ¿¹Á¤ÀÔ´Ï´Ù.

Zend_Feed ÀÇ ±¸¼ºÀº, base class Zend_Feed , Çǵ峪 ¿£Æ®¸®¸¦ Ãë±ÞÇϱâ À§ÇÑ ±âÀú Ãß»ó Ŭ·¡½º Zend_Feed_Abstract ¹× Zend_Feed_EntryAbstract ,RSS (ÀÌ)³ª Atom ¿ë¹«ÀÇ Çǵå Ŭ·¡½º¿Í ¿£Æ®¸® Ŭ·¡½ºÀÇ ½ÇÀå, ±×¸®°í ÀÚ¿¬½º·¯¿î ¹æ¹ýÀ¸·Î ±×°ÍµéÀ» Á¶ÀÛÇϱâ À§ÇÑ ÇïÆÛ·ÎºÎÅÍ ¼º¸³µÇ°í ÀÖ½À´Ï´Ù.

ÀÌÇÏ¿¡¼­´Â,RSS ÇǵåÀÇ Ãëµæ, ÇÇµå µ¥ÀÌÅÍÀÇ PHP ¹è¿­¿¡ÀÇ º¯È¯, µ¥ÀÌÅÍÀÇ Ç¥½Ã, µ¥ÀÌŸº£À̽º¿¡ÀÇ º¸Á¸µîÀÌ °£´ÜÇÑ »ç¿ë¿¹¸¦ ³ªÅ¸³À´Ï´Ù.

[
ÁÖÀÇ] ÁÖÀÇ

RSS Çǵ忡 ÀÇÇØ¼­, »ç¿ëÇÒ ¼ö Àִ ä³ÎÀ̳ª ¾ÆÀÌÅÛÀÇ ÇÁ·ÓÆÛƼ°¡ ´Ù¸¨´Ï´Ù. RSS ÀÇ »ç¾ç¿¡¼­´Â ¿É¼ÇÀÇ ÇÁ·ÓÆÛƼ°¡ ¸¹ÀÌ Á¤Àǵǰí ÀÖÀ¸¹Ç·Î, RSS µ¥ÀÌÅ͸¦ Ãë±ÞÇÏ´Â Äڵ带 ¾µ ¶§ À̰Ϳ¡ ÁÖÀÇÇսôÙ.

·Ê 10.1. Zend_Feed ¿¡ ÀÇÇÑ´Ù RSS ÇÇµå µ¥ÀÌÅÍÀÇ »ç¿ë


<?php
require_once 'Zend/Feed.php';

//  ÃÖ½ÅÀÇ Slashdot  Çìµå¶óÀÎÀ» ÃëµæÇÕ´Ï´Ù
try {
    
$slashdotRss Zend_Feed::import('http://rss.slashdot.org/Slashdot/slashdot');
} catch (
Zend_Feed_Exception $e) {
    
//  ÇǵåÀÇ Àоîµé¿©¿¡ ½ÇÆÐÇß½À´Ï´Ù
    
echo " ÇǵåÀÇ ÀбâÁß¿¡ ¿¹¿Ü°¡ ¹ß»ý: {$e->getMessage()}n";
    exit;
}

//  ä³Î µ¥ÀÌÅÍÀÇ ¹è¿­À» ÃʱâÈ­ÇÕ´Ï´Ù
$channel = array(
    
'title'       => $slashdotRss->title(),
    
'link'        => $slashdotRss->link(),
    
'description' => $slashdotRss->description(),
    
'items'       => array()
    );

//  ä³ÎÀÇ °¢ Ç׸ñÀ» ·çÇÁ ÇØ, °ü·ÃÇÏ´Â µ¥ÀÌÅ͸¦ º¸Á¸ÇÕ´Ï´Ù
foreach ($slashdotRss as $item) {
    
$channel['items'][] = array(
        
'title'       => $item->title(),
        
'link'        => $item->link(),
        
'description' => $item->description()
        );
}

?>