解析XML文件超时

时间:2012-09-15 14:56:47

标签: php xml

解析1986行的XML文件时遇到问题..它让我执行超时!!

这是我的代码:

$XML_File = simplexml_load_file("EXTERNAL URL");

$projects = $XML_File->channel->item;
$i = 0;
while($projects)
{
    $title = $projects[$i]->title;
    $link = $projects[$i]->link;
    $description = $projects[$i]->description;
    $category = $projects[$i]->category;
    $i++;
}

当我运行它时,它会在30秒后超时,而不会返回任何结果!!

当我将while更改为for循环时...最大值为4它工作正常..有没有办法解析一个大文件?或者我将转向创建桌面应用程序??

1 个答案:

答案 0 :(得分:2)

$XML_File = simplexml_load_file("EXTERNAL URL"); 

$projects = $XML_File->channel->item; 
$i = 0; 
while($projects) 
{ 
    $title = $projects[$i]->title; 
    $link = $projects[$i]->link; 
    $description = $projects[$i]->description; 
    $category = $projects[$i]->category; 
    $i++; 
} 

我认为这不会完成。您只是检查$projects是否存在。

也许这样的事情会起作用:

while(isset($projects[$i]))
....