parse etiketli yazılar

Daha önce buradaki yazımda PHP ile YouTube linklerinden videolarının bilgilerini almayı açıklamıştım. Şimdi aynı şeyi DailyMotion’da anlatmanın sırası geldi. Olay DailyMotion’un verilen bir video linkinden o videonun başlığını, açıklamasını, videonun resmini eltmek. Yeni projemde bu tip bir olayla karşılaşınca araştırma yaptım, çeşitli kodlar denedim ve sonunda oluşturduğum sentez PHP fonksiyonla bu işlemlerin hepsini yapabilecek duruma geldim.

function dailymotionParse($url)
 {
 $vidparser = parse_url($url);
 $video['id'] = substr($vidparser['path'], 7);
 $urlXML = "http://www.dailymotion.com/atom/video/". $video['id'];
 $dailyValue = $this->xml2array($urlXML);
 if( $dailyValue == null)
 $video['works']="NO";
 else
 {
 preg_match_all("/<\s*img [^\>]*src\s*=\s*[\"\"']?([^\"\\'\s>]*)/i", $dailyValue['feed']['entry']['summary'], $dailyImg);
 preg_match_all("/(<p.*>)(\w.*)(<\/p>)/ismU", $dailyValue['feed']['entry']['summary'], $dailyDesc);
 $video['img'] = $dailyImg[1][0];
 $video['title'] = $dailyValue['feed']['entry']['title'];
 $video['desc'] = $this->limit_words( strip_tags( $dailyDesc[0][0] ), 15 );
 }

 return $video;
 }

Öncelikle bu fonksiyonun çalışması için 6. satırdaki xml2array() fonksiyonunun da kodlarınız arasında olması gerekir. Bu fonksiyon php.net’ten bulduğum herhangi bir XML’i PHP arraya dönüştüren fonksiyondan birisi. Bu fonksiyonu diğer XML veriler için de kullanabilirsiniz.

(daha fazla…)

Kendi geliştirdiğiniz uygulamanızda kullanıcılarınızın veya sizin gireceğiniz YouTube linkinden(örnek: http://www.youtube.com/watch?v=0peX66dC6Sk) o videonun başlığını, açıklamasını, videonun resmini elde edip bunu kullanmak isteyebilirsiniz. Yeni projemde bu tip bir olayla karşılaşınca araştırma yaptım, çeşitli kodlar denedim ve sonunda oluşturduğum sentez PHP fonksiyonla bu işlemlerin hepsini yapabilecek duruma geldim.

function youtubeParse($url)
{
$vidparser = parse_url($url);
$video['id'] = substr($vidparser['query'], 2);
$urlXML = "http://gdata.youtube.com/feeds/api/videos/". $video['id'];
$youtubeValue = xml2array($urlXML);
if( $youtubeValue == null)
$video['works']="NO";
else
{
$video['title'] = iconv("UTF-8", "ISO-8859-9", $youtubeValue['entry']['title']);
$desc = $youtubeValue['entry']['content'];
$video['img'] = "http://img.youtube.com/vi/" . $video['id'] . "/1.jpg";
$video['desc'] = $this->limit_words(iconv("UTF-8", "ISO-8859-9", $desc), 15);
}

return $video;
}

Öncelikle bu fonksiyonun çalışması için 6. satırdaki xml2array() fonksiyonunun da kodlarınız arasında olması gerekir. Bu fonksiyon php.net’ten bulduğum herhangi bir XML’i PHP arraya dönüştüren fonksiyondan birisi. Bu fonksiyonu diğer XML veriler için de kullanabilirsiniz. (daha fazla…)


Aforizma

Ruh hastası olmak kolay bir iş değildir. İnsanın önce ruh sahibi olması gerekir.

Kategoriler

Polls

Tekel işçileri eylemi hakkında ne düşünüyorsunuz?

View Results

Loading ... Loading ...