PHP Curl进度条(回调返回百分比)

PHP Curl进度条(回调返回百分比),php,curl,libcurl,Php,Curl,Libcurl,我已经使用实现了curl进度条 curl_setopt($curl, CURLOPT_PROGRESSFUNCTION, 'callback'); curl_setopt($curl, CURLOPT_BUFFERSIZE,64000); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); 和一个回调函数 问题是,脚本每次都会输出html上的百分比,如下所示: 0 0.1 0.2 0.2 0.3 0.4 .. .. .. 1 1.1 如何将

我已经使用实现了curl进度条

curl_setopt($curl, CURLOPT_PROGRESSFUNCTION, 'callback');

curl_setopt($curl, CURLOPT_BUFFERSIZE,64000);

curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
和一个回调函数

问题是,脚本每次都会输出html上的百分比,如下所示:

0
0.1
0.2
0.2
0.3
0.4
..
..
..
1
1.1

如何将其与CSS结合起来以显示不断变化的进度条?

假设您有一个进度条HTML:

<div id="progress-bar">
    <div id="progress">0%</div>
</div>
和JavaScript:

var progressElement = document.getElementById('progress')

function updateProgress(percentage) {
    progressElement.style.width = percentage + '%';
    progressElement.innerHTML = percentage + '%';
}
您可以让它输出JavaScript并为您更新进度条,例如:

<script>updateProgress(0);</script>
<script>updateProgress(0.1);</script>
<script>updateProgress(0.2);</script>
..
..
updateProgress(0);
updateProgress(0.1);
updateProgress(0.2);
..
..

请注意,您不能将每个更新放在单独的脚本块中,因为浏览器将在执行之前尝试读取完整的脚本,而进度条将不起作用。

太棒了!我对你感激不尽。。你真的给了我很大的方便。再次感谢你,朋友。只是出于好奇,它不会太阻塞我的HTML吗?用脚本标签?可能会使浏览器过载并崩溃?嗯。也许,因为每0.1%输出一个进度意味着1000个脚本标记。也许你可以设置一个threshold,每1%更新一次进度,这样最多有100个脚本标记。或者只使用这里为你做的类:Hi@WarDoGG,你能提供解决方案的完整工作示例吗?
<script>updateProgress(0);</script>
<script>updateProgress(0.1);</script>
<script>updateProgress(0.2);</script>
..
..