PHP+cURL 禁用命令行进度输出

标签 php linux curl

我有一个 PHP 脚本,它使用 cURL 连接到远程服务器并下载一些文件。我通过命令行运行它,

php get.php

每当它开始下载数据时,我都会得到这个输出:

Total    % Received % Xferd  Average Speed   Tim Dload  Upload   Total   Spent    Left  Speed
100      162k       0        162k            0   0      21732    0       --:--:-- 0:00:07 --:--:-- 36001

如何禁用它?

最佳答案

来自manual refering to CURLOPT_NOPROGRESS :

CURLOPT_NOPROGRESS

TRUE to disable the progress meter for cURL transfers.

Note: PHP automatically sets this option to TRUE, this should only be changed for debugging purposes.

看起来进度已被明确打开。检查该选项的代码。在任何情况下,如果您想再次明确禁用它,curl_setopt($curlHandle, CURLOPT_NOPROGRESS, true) 应该可以解决问题。

更新:如果你改为执行类似 exec("curl http://example.com") 的操作,你应该 a) 想想你在做什么 b) 运行 curl -s 禁用进度。 PHP 的流支持 http,因此您可以使用 file_get_contentscopy

关于PHP+cURL 禁用命令行进度输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18787132/

相关文章:

PHP urlencode 和解码

php - Magento 数据库平面表

linux - 如何在二进制文件中保留特定符号?

ios - 将 curl 命令转换为 iOS

php - 是否可以让 vim 阻止保存有解析错误的 php 文件?

linux - Windows 10 上的 Bash linux (WSL) - 当我在其中移动某些内容时,终端/控制台不刷新文件夹/文件

linux - 如何从用户 1 切换到用户 2 并在 linux 中运行一些命令?

curl - 使用curl时缺少 Elasticsearch 结果

php - 请求 GZIP 页面并使用 cURL 和 PHP 进行处理

php - Yii2 - 获取不带参数的应用程序 URL