PHP RSS tabanlı programı

0 Cevap php

Ben (muhtemelen) basit bir PHP soru var. Bir RSS beslemesi bir program çekiyorum. RSS çıkış gibi gibi görünüyor:

17th Jan 2011 : Day 2
18th Jan 2011 : Day 3
19th Jan 2011 : Day 4
20th Jan 2011 : Day 5

Ben bu yüzden sadece "Gün x" kalan tüm bilgileri kaldırmak için çalışıyorum. Program ancak ben bu yüzden geçerli gün olsun tek Günü RSS ayrıştırıcı sınırlayıcı ediyorum, bir 8 gün döngüsü çalışır.

Ben RSS çekmek için bu kullanıyorum:

$rss->parse();
$rss->showStories('1');

Müdahalesi biraz sonra ben bu ile geldi.

$i=1;
while($i<=8) {
    if (preg_match("/Day 3/i", "Day ".$i)) {
        echo $i;
    } else {
        $i++;
    }
}

Açıkçası sorun burada başlıyor:

if (preg_match("/Day 3/i", "Day ".$i)) {

Ben bu geçerli program gün ne olduğunu bulmak istiyor ve ardından gelen verileri görüntüler. Bu doğru bir şekilde yaklaşıyor muyum Birisi bana doğru yönde lütfen işaret olabilir?

Teşekkürler!

EDIT: Sabit kodu isteyen herkese için aşağıdaki gibidir:

<?php
$url = "";
$rss = simplexml_load_file($url);
if($rss) {
    $items = $rss->channel->item;
        foreach($items as $item) {
            foreach ($item->title as $story) {
                if (!preg_match(date("/jS M Y/"), $story)) continue;
                preg_match("/Day (\d+)/", $story, $m);
                echo $m[1]; // should print "2" if today is January 17
                break; // stop searching
            }
        }
}
?>

0 Cevap