Как получить информацию из RSS? - PullRequest
0 голосов
/ 27 января 2011

В настоящее время я работаю с ридером simplepie rss, в котором мне нужно получить изображения, присутствующие в теге <content:encoded>

http://devilsworkshop.org/feed 

это тот URL, с которого я должен получить изображения я написал этот код

<?php
                error_reporting(E_ALL & ~E_DEPRECATED);
                include_once('../my_done_work/simplepie.inc');
                $feed = new SimplePie();
                $feed->set_feed_url('http://devilsworkshop.org/feed');
                $feed->init();
                $feed->handle_content_type();


   function returnImage ($text)
{
        $text = html_entity_decode($text, ENT_QUOTES, 'UTF-8');
        $pattern = "/<img[^>]+\>/i";
        preg_match($pattern, $text, $matches);
        $text = $matches[0];
        return $text;
}


function scrapeImage($text) 
{

        $pattern = '/src=[\'"]?([^\'" >]+)[\'" >]/'; 
        preg_match($pattern, $text, $link);
                $link = $link[1];
                $link = urlencode($link);

        return $link;

}
 $count = 0;
                $arrImg = array();
                $arrtitle = array();
                    foreach ($feed->get_items() as $kk=> $item) {
                        $feedDescription = $item->get_content();
                        $feedTitle = $item->get_title();
                        $image = returnImage($feedDescription);
                        $image = scrapeImage($image);
                        $image = urldecode($image);
                        $arrimg[$count] = $image;
                        $arrtitle[$count] = $feedTitle;
                       $jj = $kk+1;
                echo '<li><a href="#"><img src="' .$arrimg[$kk]. '" id="remove" ><span>'.$arrtitle[$kk].'</span></a></li>';

                        $count++;

                }

 ?>

но это не дает мне все изображения, но только 10 из них.

пожалуйста, помогите.

Спасибо.

1 Ответ

0 голосов
/ 27 января 2011

Вы должны использовать preg_match_all вместо preg_match, чтобы получить все совпадения регулярного выражения в строке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...