function curl_get($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$data = curl_exec($ch);
print_r(curl_getinfo($ch, CURLINFO_SIZE_DOWNLOAD));
curl_close($ch);
return $data;
}
我试图匹配一个字符串与此页面“wikipedia.sfstate.us/Scarves”。我用函数来获取内容:只返回最后一个内容块
$url = "http://wikipedia.sfstate.us/Scarves";
$html = curl_get($url);
var_dump($html);
结果看起来是这样的:
812 //CURLINFO_SIZE_DOWNLOAD
string(812) "..." //$html string where the content is stored
然而,整个文件是64612个字节(由web-sniffer.net结果)。和64612 = 1024 * 63 + 812.也就是说,我只得到文件的最后812个字节。
为什么会发生这种情况?关于如何获取整个内容的任何想法?谢谢。
P.S .:我也试过。如下但不起作用
if(strlen($html) < 1024){
$html = '';
$i = 0;
while($content = file_get_contents($url, FILE_TEXT, NULL, $i, $i + 1023)){
$html .= $content;
$i += 1023;
}
}