javascript - 当页面仍在下载时回显字符串

标签 javascript php jquery file-get-contents

我正在尝试制作一个 PHP 下载器。

echo '<p>Downloading New Update</p>';
$newUpdate = file_get_contents('http://your-server.com/update.zip');
echo 'Done downloading';

当我运行脚本时(假设下载 zip 需要很长时间),页面会加载直至完全下载,然后显示 正在下载新更新完成下载同时。

我想要的是在完成下载之前显示正在下载新更新。当它出现时,必须出现完成下载

如何将此脚本与 Ajax、Jquery、Javascript 结合起来,以创建更动态的下载器?

最佳答案

简单的刷新就可以解决任务

echo '<p>Downloading New Update</p>';
flush();
$newUpdate = file_get_contents('http://your-server.com/update.zip');
echo 'Done downloading';

并且您需要确保该文本不在表格内。 然后浏览器应该使用渐进式渲染并且文本应该真正出现。 您需要flush的原因是PHP实际上不会将文本从echo()发送到浏览器,直到满足某些条件,例如脚本完成或显式调用flush()

关于javascript - 当页面仍在下载时回显字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28455969/

相关文章:

javascript - ESLint 可以帮助你防止 Unhandled-Promise-Rejections 吗?

javascript - 如何使盒子从侧面扩展一段距离

javascript - 使用 new Date() 设置的日期不正确

php - 将 preg_replace() 替换为 preg_replace_callback()

javascript - jquery 每个 json 对象不执行任何操作

jquery - CSS:水平居中固定按钮,并为顶部边距设置动画。

java - 如何在JAVA中获取Internet Explorer的文档模式

php - 无效的项目内容目录错误

php - PHP 中内存清理的最佳方法是什么? (5.2)

jquery - jQuery 中的 Grep 与过滤器?