如何从php中的url列表中跳过不相应的url

时间:2015-04-22 17:40:02

标签: php excel url curl get-headers

我有excel xheet中的网址列表。我正在阅读excel表格中的所有网址,现有的网址和不存在的网址都存储在serapare文本文件中。 我的问题是如果url没有响应,则循环停止。我的目的是发送该网址并检查下一个网址。

require_once 'excel_reader2.php';
$data = new Spreadsheet_Excel_Reader("urls.xls");

$totalsheets=count($data->sheets);

for($i=0;$i<count($data->sheets);$i++) // Loop to get all sheets in a file.
{
 if(count($data->sheets[$i][cells])>0) // checking sheet not empty
    {
    $totalrows=count($data->sheets[$i][cells]);
    for($j=1;$j<=count($data->sheets[$i][cells]);$j++) // loop used to get each row of the sheet
        {
        $name=$data->sheets[$i][cells][$j][1];  
        $url=$data->sheets[$i][cells][$j][2];   

                $file_headers =get_headers($url);
                if(strpos($file_headers[0],"200")==true || $file_headers[0]!= 'HTTP/1.1 404 Not Found') 
                {
                    $exists = 'yes';
                    $myfile = fopen("existurls.txt", "w") or die("Unable to open file!");
                    $text .= $j."  ".$name."    ".$url."\n";
                    fwrite($myfile, $text);
                    fclose($myfile);
                    echo "Url exists";
                }
                else
                {
                  $exists = 'no';
                    $myfile = fopen("nonexisturls.txt", "w") or die("Unable to open file!");
                    $text .= $j."  ".$name."    ".$url."\n";
                    fwrite($myfile, $text);
                    fclose($myfile);
                    echo "Url Not exists";
                }

        }
    }
}

代码运行正常。但是如果任何url没有响应,则循环停止而不是下一个。 请帮助我如何跳过不响应网址并继续循环。

0 个答案:

没有答案