我必须从网站抓取一些值。我应该使用curl还是file_get_contents ??
我在本地主机上收到了一些关于file_get_contents的警告。
任何帮助将不胜感激
答案 0 :(得分:3)
如果您有基本要求,我会赞成file_get_contents
。如果您需要设置标题和请求方法等...我建议您使用curl
。
在您的情况下,我认为file_get_contents
已足够。
或者,您可以使用file
返回检索到的文件中的行数组。它适用于本地可访问的文件,也适用于远程URL。我经常发现循环遍历一个行数比在一个块中处理整个文件更方便 - 所以这可能是你最好的选择。
<?php
foreach(file('http://example.com/the-file.ext') as $line){
// do something with $line
}
?>
答案 1 :(得分:1)
我认为Curl比file_get_contents更可取,因为你可以设置标题,请求方法如POST或GET,遵循重定向等等。所以,curl将是明智的
<?php
$ch = curl_init();
$timeout = 5;
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
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);
echo $data;
?>
答案 2 :(得分:0)
file_get_contents应该没问题