php count rss записей с определенной даты / времени - PullRequest
0 голосов
/ 09 апреля 2010

Может кто-нибудь сказать мне, почему этот код не работает:

$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;

1 Ответ

3 голосов
/ 09 апреля 2010

Я думаю, что вы хотите сделать:

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

Или при условии, что записи в ленте RSS упорядочены правильно:

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

Я не знаю, как SimpleXMLElement работает внутри, поэтому я и назначаю массив элементов для новой переменной раньше (возможно, в противном случае внутренний указатель массива будет сброшен).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...