php 实时获取已下载文件大小

使用php 如何获取已下载文件的大小
想做个实时下载进度 我想把已下载的文件大小返回给前端

慕勒3428872
浏览 454回答 4
4回答

一只甜甜圈

函数 filesize() ?还是说配置请求头部 Content-Length ?

暮色呼如

$dst_file = fopen(sys_get_temp_dir() . '/' . uniqid($time) . '.txt','w'); $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_BINARYTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60); curl_setopt($ch, CURLOPT_TIMEOUT, 3600); curl_setopt($ch, CURLOPT_BUFFERSIZE, 20971520); $flag=0; curl_setopt($ch, CURLOPT_WRITEFUNCTION, function($ch ,$str) use (&$flag,$dst_file){ $len = strlen($str); file_put_contents($dst_file,$str,FILE_APPEND); return $len; }); $output = curl_exec($ch); fclose($dst_file); curl_close($ch); curl下载文件可以用上面的方法。

呼啦一阵风

……没懂,前端想拿下载进度的话可以用Ajax啊?
打开App,查看更多内容
随时随地看视频慕课网APP