如题。
不能使用 set_time_limit(0),因为线上项目不会让你无限期的执行
我现在能想到的只有使用curl
curl_setopt($ch, CURLOPT_WRITEFUNCTION, function($ch ,$str){});
每次读取一小部分然后写入文件。
不知道还有没有更好的办法,希望各位大神指点。
如题。
不能使用 set_time_limit(0),因为线上项目不会让你无限期的执行
我现在能想到的只有使用curl
curl_setopt($ch, CURLOPT_WRITEFUNCTION, function($ch ,$str){});
每次读取一小部分然后写入文件。
不知道还有没有更好的办法,希望各位大神指点。
采用断点续传即可。
前提条件是服务端支持断点续传。这个只要看服务端返回的应答头中,是否包含以下header:
Accept-Ranges: bytes
只要有这个header,就说明对方支持断点续传。
这样每次请求时,可以在请求头中增加以下header,以指定读取的数据范围:
Range: bytes=1024-2047 请求从第1024个字节到第2047个字节之间的数据
Range: bytes=2048- 请求从第2048个字节到最后一个字节的内容
诸如此类…
2 回答1.5k 阅读✓ 已解决
1 回答1.3k 阅读✓ 已解决
2 回答925 阅读✓ 已解决
1 回答1.1k 阅读✓ 已解决
2 回答990 阅读
1 回答960 阅读
1 回答882 阅读
线上项目可以设置页面超时,从而可以无限运行