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
            }
        }
}
?>