如何在浏览器中显示cURL进度条(使用PHP的exec()函数)



我使用这个小PHP代码是为了镜像任何文件到我的服务器。

<?php
 $cmd= "curl -L -O http://www.dropbox.com/s/8lu0nutt4tgpkku/jbtools.ipa";
 exec($cmd);
?>

但是浏览器正在冻结,直到镜像过程完成。我的问题是,当我在终端中运行此命令时,如何显示进度条?像这样:

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                             Dload  Upload   Total   Spent    Left  Speed

我尝试了很多标志,比如:

-v --verbose -I -include --trace -

但是没有一个成功。我也问了一个问题,这里转换成PHP CURL代码,但没有人可以帮助我!

如果不可能,建议我用其他命令来做同样的工作,我真的很感激。

最简单的方法是轮询。在后台执行脚本,并直接输出(到一个文件),你的前端(js)可以轮询。

在后台执行,示例如下:https://felixmilea.com/2014/12/running-bash-commands-background-properly/

显示shell进程的

可以通过管道到pv来完成:http://linux.die.net/man/1/pv

考虑尝试使用websockets:http://reactphp.org/-看看rachet项目。这将为您提供想要执行的任何内容的实时输出。

相关内容

  • 没有找到相关文章

最新更新