コード例 #1
0
ファイル: RssParser.php プロジェクト: tomaj/feed-downloader
 public function parseContent($content, $callback)
 {
     try {
         $xml = new \SimpleXMLElement($content);
     } catch (\Exception $e) {
         return Processor::PARSE_ERROR;
     }
     $result = $xml->xpath($this->xpathItems);
     foreach ($result as $item) {
         $feedItem = new FeedItem();
         if (isset($item->title)) {
             $feedItem->setTitle((string) $item->title);
         }
         if (isset($item->link)) {
             $feedItem->setLink((string) $item->link);
         }
         if (isset($item->leadin)) {
             $feedItem->setDescription((string) $item->leadin);
         }
         if (isset($item->description)) {
             $feedItem->setDescription((string) $item->description);
         }
         if (isset($item->guid)) {
             $feedItem->setGuid((string) $item->guid);
         }
         if (isset($item->pubDate)) {
             $feedItem->setPubDate((string) $item->pubDate);
         }
         if ($item->category) {
             $feedItem->setCategory((string) $item->category);
         }
         if ($item->image) {
             $feedItem->setImage((string) $item->image);
         }
         if ($item->url) {
             $feedItem->setUrl((string) $item->url);
         }
         $callback($feedItem);
     }
     return Processor::PROCESS_OK;
 }
コード例 #2
0
ファイル: JsonParser.php プロジェクト: tomaj/feed-downloader
 public function parseContent($content, $callback)
 {
     $data = json_decode($content);
     if (!$data) {
         return Processor::PARSE_ERROR;
     }
     foreach ($data->indexElements as $key => $item) {
         $feedItem = new FeedItem();
         if (isset($item->title)) {
             $feedItem->setTitle($item->title);
         }
         if (isset($item->link)) {
             $feedItem->setLink($item->link);
         }
         if (isset($item->lead)) {
             $feedItem->setDescription($item->lead);
         }
         if (isset($item->guid)) {
             $feedItem->setGuid($item->guid);
         }
         if (isset($item->dateFrom)) {
             $feedItem->setPubDate($item->dateFrom);
         }
         if (isset($item->category)) {
             $feedItem->setCategory($item->category);
         }
         if (isset($item->image)) {
             $feedItem->setImage($item->image);
         }
         if (isset($item->url)) {
             $feedItem->setUrl($item->url);
         }
         $callback($feedItem);
     }
     return Processor::PROCESS_OK;
 }