用 PHP 请求大文件时,如何得到实时速度?

2017-03-21 16:49:38 +08:00
 lslqtz
准备用 PHP 定时请求一个大文件观测性能,但是查了查都没有找到关于 fopen , file_get_contents , curl 之类的函数如何得到实时速度,所以来问问各位有没有实现过的,应该如何实现?
2583 次点击
所在节点    PHP
8 条回复
hoythan
2017-03-21 17:04:25 +08:00
AJAX + fastcgi_finish_request ?
vus520
2017-03-21 17:09:13 +08:00
用 fread 循环,就可以读取时间差和内容长度,计算出速度了
lslqtz
2017-03-21 17:16:09 +08:00
@hoythan 然而不是用浏览器,是一个常驻命令行脚本
suren1986
2017-03-21 17:16:40 +08:00
可以设置 CURLOPT_PROGRESSFUNCTION
http://php.net/manual/zh/function.curl-setopt.php
lslqtz
2017-03-21 17:17:28 +08:00
@vus520 一次读多少比较好呢…
有些麻烦,不过是一个好的解决方式。
感谢已发!
lslqtz
2017-03-21 17:20:40 +08:00
@suren1986 也比较麻烦,不过比起自己实现方便很多。
感谢已发~!
enenaaa
2017-03-21 17:26:39 +08:00
curl 可以设置回调函数, 在里面计算当前速度。
CURLOPT_WRITEFUNCTION
lslqtz
2017-03-21 17:42:47 +08:00
@enenaaa 不行,在 PHP-CLI 中执行直接给调用 curl 了。
@suren1986 有用,十分感谢!
@vus520 十分感谢,效率应该会比 curl 高,不过懒的实现啦 w~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/349186

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX