RJWEBDESIGN - tvorba webových prezentací

Novinky

22.04.2008
Portál Španělský fotbal byl spuštěn, zatím probíhá testování více

06.03.2008
Pracuji na fotbalovém portálu zabývající se španělským fotbalem

12.01.2008
Dokončen fotbalový rezervační systém Profi Football více

08.01.2008
Spuštění modulu Eshopu pro firmu AZ-SportCzech více

04.01.2008
Dokončena prezentace firmy STRAIGHT CONSULT více


Reklama

Španělský fotbal - spanelskyfotbal.cz

Cizí krmivo


Něco málo o mé osobě

Je mi 26 let, bydlím v hlavním městě ČR. Webdesignem a programováním se zabývám již několik let ... více


Snažím se poradit


Sport, sleduji, hraji


Hlavní Logo

Poslední komentáře

  • nechapem -

    nechapem

  • RJ -

    [131]

    Jak zkopirovat? Vse podstatne mate v clanku, deklaraci funkce a jeji pouziti. Nic vic v tom neni

  • Karel Kaleta -

    Dobrý den, potřeboval bych se zeptat, jestli by jste mi nemohl zkopírovat soubor uložený na vaší adrese http://www.rjwebdesign.net/…ss/index.php a poíslat mejlem. Nevím jak rozjet vaši RSS čtečku a s tímhle to mám jednodušší. Díky za odpověď.

  • RJ -

    [129] To bych nedelal, kdyby zmenili treba razeni men a napr. EURO by se z radku 5 presunulo na radek 8 tak by ti to nevyslo .. zkus to pres to pole, bude to univerzalnejsi

  • kuba -

    [128]jo dík, už jsem to vyřešil, sice ne přes pole, ale trošku kostrbatě přes číslo řádku měny

Statistika

  • Článků celkem: 12
  • Komentářů celkem: 27

Blogspot » PHP » Jednoduchá RSS čtečka

Jednoduchá RSS čtečka

Čtvrtek, 8 .Května 2008, 05:10, prečteno 402x

Na diskusních fórech se tu a tam objeví příspěvek, kdy tazatel neví jak zobrazit cizí RSS kanál na svém webu. Pomocí PHP 5 a funkce simplexml_load_file je to hračka ....

Níže uvedená funkce bude fungovat za předpokladů:

  • Tam kde ji voláte funguje PHP 5
  • Pokud ji budete volat s argumenty kódování, musíte mit povolenou funkci iconv
  • Dostupný RSS kanál

/**
 * myRss()
 *  
 * Jednoducha funkce na zobrazeni informaci z daneho RSS kanalu
 * 
 * @author Roman Janko <admin@rjwebdesign.net>
 * @date 08-05-2008
 * @todo dodelat kesovani vystupu
 * @version 1.0   
  
 * @param string $url  adresa na RSS kanal
 * @param integer $limit  pocet zobrazozenych polozek
 * @param mixed $charsetFrom v jakem kodovani rss kanal prebirame, v pripade false se nic nekonvertuje
 * @param mixed $charsetTo do jakeho kodovani rss zobrazime , v pripade false se nic nekonvertuje
 * @return string  pozadovany rss vystup nebo informace o chybe
 */
function myRss($url = '', $limit = 10, $charsetFrom = false, $charsetTo = false)
{
    if (@ $xml = simplexml_load_file($url))
    {
        $counter = 0;
        $out = '<ul>';
        foreach ($xml->item as $item)
        {
            if ($charsetFrom != false && $charsetTo != false)
            {
                $item->title       = iconv($charsetFrom, $charsetTo, $item->title);
                $item->description = iconv($charsetFrom, $charsetTo, $item->description);   
            }
            
            
            if ($counter == $limit)
                break;
            $out .= '<li><a href="'.$item->link.'">'.$item->title.'</a> <br /> '.$item->description.'</li>';
            $counter++;
        }
        $out .= '</ul>';
    }
    else
    {
        $out = 'Požadovanou url nelze načíst ( <em>' . $url . '</em> )'; 
    }
    
    return $out;
}

Celou funkci voláme prostě

echo myRss('http://www.novinky.cz/rss/kultura', 5, 'utf-8', 'windows-1250');

A zde můžeme vidět výsledek. Tato funkce je velmi jednoduchá, jejím jediným cílem je parsnout RSS kanál a připravit ho prohlížeči na výstup. Určitě by se hodilo kešování výstupu, aby se RSS kanál nemusel parsovat při každém refreshi stránky, nějaká kontrola obsahu ( x HTML ) atd. Proto pokud hledáte sofistikovanější nástroj, odkáži Vás na třídu, kterou sám používám LAST RSS. To je pro dnešek vše, mír s Vámi :)

Hodnocení: Počet hlasů: 4

Komentáře

Karel Kaleta [1] -reagovat- 08.05. 21:17 84.42.240.---

Dobrý den, potřeboval bych se zeptat, jestli by jste mi nemohl zkopírovat soubor uložený na vaší adrese http://www.rjwebdesign.net/…ss/index.php a poíslat mejlem. Nevím jak rozjet vaši RSS čtečku a s tímhle to mám jednodušší. Díky za odpověď.

RJ [2] -reagovat- 09.05. 09:46 78.102.107.---

[1] Karel Kaleta

Jak zkopirovat? Vse podstatne mate v clanku, deklaraci funkce a jeji pouziti. Nic vic v tom neni

Přidat komentář

Nový vzkaz

© 2005 - 2008 RJWEBDESIGN, všechna práva vyhrazena.
Nabízíme: Tvorba www stránek
Kontakt: telefony +420 777 856 657 | E-mail: admin@rjwebdesign.net
Spolupracujeme: Aria Studio, MXART Partnerské weby: Pesonline.cz, EuroFotbal.cz, SpanelskyFotbal.cz

© 2008 RJWEBDESIGN