Za kraj ćemo odraditi jedan mini projekat, a to je parsovanje liste blogova sa sajta http://planetoid.srpski.org.
Ovaj projekat je nešto komplikovaniji nego uobičajeni zadaci te vrste, jer je sajt planetoid-a na ćirilici, što je donekle problem jer se PHP još uvek ne snalazi dobro sa UTF karakterima.
Učitavanjem sajta http://planetoid.srpski.org u browser, nakon analize html source-a dolazimo do formata u kome su smešteni podaci unutar html-a koje trebamo da "isčupamo":
//get blogs from planetoid require_once("curl_http_client.php");
//create new instance of curl class $curl = &new Curl_HTTP_Client(true);
//and store html data from planetoid into string $html_source = $curl->fetch_url("http://planetoid.srpski.org/", null, 30); //echo $html_source; $found = preg_match_all("/<li><a href=\"([^\"]+)\">([^<]+)<\/a> <a href=\"([^\"]+)\">\(извор\)<\/a><\/li>/", $html_source, $matches); //var_dump($matches); $urls = $matches[1]; $names = $matches[2];
foreach($urls as $key=>$value) { echo "$value\t$names[$key]\n"; } ?>
Kao što vidite, koristili smo Curl klasu za skidanje html-a sa planetoida. Ključna stvar ovde dešava se 19-toj liniji koda, koja sadrži regularni izraz koji "čupa" sve podatke o blogovima i smešta ih u $matches niz. Obratite pažnju da smo delove patterna koje smo želeli da isčupamo stavili unutar zagrada (za deo koji sadrži url bloga i ime bloga), a upravo ti delovi će biti prisutni u $matches nizu. Nakon importa, sa podacima možemo da radimo šta god želimo (štampamo na ekran, smestimo u bazu itd.).
Eto toliko o regularnim izrazima za ovaj uvodni tutorijal. Za kraj evo i nekoliko linkova koji vam mogu biti od koristi prilikom daljeg proučavanja regularnih izraza.
Dragan Dinić je 32-godišnji Web programer sa preko 5 godina iskustva u razvoju LAMP based aplikacija. U slobodno vreme Dragan vodi svoj blog ili diskutuje o Internet tehnologijama na raznim Web forumima.
Ovo je arhivirana verzija originalne stranice. Izvinjavamo se ukoliko, usled tehničkih ograničenja,
stranica i njen sadržaj ne odgovaraju originalnoj verziji.
Odluka je doneta glasanjem na 28. Generalnoj konferenciji za tegove i mere, a do stupanja na snagu novih pravila neće biti dodavanja novih prestupnih sekundi, što u praksi znači da se njihova primena završava odmah.
Po dolasku na teren, ustanovljeno je da vatrena stihija guta krov objekta. Požar je zahvatio površinu od oko 150 kvadratnih metara od ukupno 400 kvadrata krovne konstrukcije, kao i jednu prostoriju u tavanu.
Američki predsednik Donald Tramp izjavio je danas da je Francuska na udaru posledica imigracije i pozvao francuske vlasti da zatvore granice i preuzmu kontrolu nad situacijom, upozorivši da bi u suprotnom moglo da bude prekasno.
Član Predsedništva SNS Petar Petković pozvao je sinoć na druženju u Paraćinu sa aktivistima Srpske napredne stranke sve da izađu na izbore 25. oktobra i podrže listu "Aleksandar Vučić – Ujedinjena Srbija".
Američki predsednik Donald Tramp izjavio je danas da je Francuska na udaru posledica imigracije i pozvao francuske vlasti da zatvore granice i preuzmu kontrolu nad situacijom, upozorivši da bi u suprotnom moglo da bude prekasno.
Član Predsedništva SNS Petar Petković pozvao je sinoć na druženju u Paraćinu sa aktivistima Srpske napredne stranke sve da izađu na izbore 25. oktobra i podrže listu "Aleksandar Vučić – Ujedinjena Srbija".
Brazilski građevinski radnik Edimar Roša Martins prodao je svoje stvari kako bi otputovao u drugi deo zemlje i upoznao ženu za koju je verovao da bi mogla da mu postane životna partnerka.
Poglavar rimokatoličke crkva Papa Lav XIV obratio se danas okupljenima na Trgu Svetog Petra, što je bio njegov prvi javni nastup nakon operacije raka pluća.
Muzički spektakl "Zvezde Granda" je sinoć bio najgledanija emisija na svim televizijama u svom terminu sa 14 odsto učešća u gledanosti u ukupnoj populaciji.
Srpski influenser Milivoje Ašćerić, poznatiji kao Mića, našao se usred nereda u Parizu, odakle je sa pratiocima podelio utiske šta se dešava u francuskoj prestonici.
Komentari 7
Pogledaj komentare