0

这是我的代码,它不能完美运行。有人可以帮我找出问题吗?

$urls = file('list.txt', FILE_IGNORE_NEW_LINES);
foreach($urls as $url) {
    copy(trim($url),"c:/data/$url");
    echo "$url is done";
    ob_flush();
    flush();
}       

某些 URL 不存在。

我希望 URL 中的每个文件都以 URL 的名称保存。

URL 将如下所示:http://site.com/index.htm

4

2 回答 2

0

这是一个PHP cURL函数:

/* gets the data from a URL */
function get_urlData($url) {
  $ch = curl_init();
  $timeout = 5;
  curl_setopt($ch,CURLOPT_URL,$url);
  curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
  curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
  $data = curl_exec($ch);
  curl_close($ch);
  return $data;
}

将它放在您现有的 PHP 文件中foreach

您的代码已改编:

$urls = file('list.txt', FILE_IGNORE_NEW_LINES);

foreach($urls as $url) {
  $data = get_urlData($url);
  copy($data, "c:/data/$url");
  echo "$url is done";
  ob_flush();
  flush();
}     

未经测试,但应该可以正常工作。

于 2012-07-21T02:35:56.817 回答
0
$urls = file('list.txt', FILE_IGNORE_NEW_LINES);
foreach($urls as $url) {

    $con=file_get_contents($url);
    if($con !== false)
    {    
        if(file_put_contents(trim($url),$con))
        {    
            echo "$url is done";

            //don't really see the point of these, but okay...
            ob_flush();

            flush();    
        }
    }
}  

那应该这样做。

于 2012-07-21T01:37:58.543 回答