我有一个php应用程序,我需要它从网址获取一个大的json响应。随着卷曲,当我从终端使用它时,一切都按预期进行。但是php curl并没有获得整个文件。看起来它被截断了。
我在终端使用的curl命令是:
curl -v -H 'Accept-Encoding:gzip,deflate,sdch' resultsURL --compressed
其中resultsURL是我想从中获取json的网址。
这通常会让我回到大约10,000kb(9-10mb),但是从php curl我得到的最多400-500kb。
我如何获得整个文件?
(exec不是一个选项)
答案 0 :(得分:0)
set_time_limit(0);
$url = 'http://www.example.com/a-large-file.json';
$path = '/path/to/a-large-file.json';
$fp = fopen($path, 'w+');
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_FILE, $fp);
$data = curl_exec($ch);
curl_close($ch);
fclose($fp);