2010-04-09 10 views
0

quelqu'un peut me dire pourquoi ce code ne fonctionne pas:php count entrées rss depuis une date/heure spécifique

$q = $_GET['q']; 

// Load and parse the XML document 

$rss = simplexml_load_file("http://search.twitter.com/search.atom?lang=en&q=$q&rpp=100&page=1"); 

$Count1 = 0; 

while(strtotime($rss->entry->published)>1270833600){ 

    foreach ($rss->entry as $item) { 

    $Count1++; 

    } 

} 

print "Total Record: ".$Count1; 
+0

Veuillez préciser * ne fonctionne pas *. Des erreurs? –

Répondre

3

Je pense que vous voulez faire:

foreach($rss->entry as $item) { 
    if(strtotime($item->published) > 1270833600) { 
     $Count1++; 
    } 
} 

Ou en supposant que la les entrées du flux RSS sont correctement ordonnés:

$items = $rss->entry; 
$item = current($items); 
while(strtotime($item->published) > 1270833600){ 
    $Count1++; 
    $item = next($items); 
} 

Je ne sais pas comment fonctionne en interne SimpleXMLElement c'est pourquoi j'attribue le tableau d'éléments t o une nouvelle variable avant (il se peut que le pointeur interne du tableau soit réinitialisé sinon).

+0

+1 - Je suis sûr que c'est ce qu'il veut faire aussi. La boucle while semble être infinie, car elle vérifie simplement le premier enregistrement sur le premier départ, et le dernier enregistrement chaque fois après cela. – zombat

Questions connexes