file_get_contents 速度慢的解决办法
经过修改后有显示加速,代码如下:
ini_set('default_socket_timeout', 1); //关键点11111111111111; $opts = array("http" => array( "method" => "GET", "timeout" => 60, "Host" => "www.****.com", "Accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", "Accept-Encoding" => "gzip, deflate, sdch", "Accept-Language" => "zh-CN,zh;q=0.8", "User-Agent" => "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36", "Upgrade-Insecure-Requests" => "1", "Connection:" => "close" //关键点22222222222;
));
$context = stream_context_create($opts);
$html = @file_get_contents("http://www.****.com/",false,$context);
关键是添加了这两句代码:
ini_set('default_socket_timeout', 1);
"Connection:" => "close"
参考资料:
https://segmentfault.com/q/1010000003913255
http://bbs.csdn.net/topics/391833478?page=1
虽然速度是有显示加快了,但是偶尔还是会出现抓取不到内容的情况。
以上两句代码配合 curl_init()函数会是怎么样呢?你们去试试吧。