【问题标题】:Hide cURL info from cron job output从 cron 作业输出中隐藏 cURL 信息
【发布时间】:2014-04-16 02:33:27
【问题描述】:

对于我的大多数 cron 作业,我使用 php /path/to/file.php > /dev/null,这使我只有在有输出流式传输到 stderr 时才能收到电子邮件。除了执行 cURL 请求之外,这对所有事情都非常有用。

使用CURLOPT_RETURNTRANSFER = true,如果我从浏览器运行文件,它不会输出,但通过 cron 作业,我会收到一封包含请求详细信息的电子邮件,包括连接尝试和发送/接收的标头。

有没有办法将此输出通过管道传输到标准输出,或者最好将其从输出流中完全删除,因为如果我从浏览器运行它,我也不希望/不需要看到此信息。

感谢您的宝贵时间。


代码:

getCURL("www.example.com", array(CURLOPT_COOKIEFILE => COOKIES));

function getCURL($url, $opt = array()){
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_USERAGENT, "someuseragent");
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($ch, CURLOPT_COOKIEJAR, COOKIES);
    curl_setopt($ch, CURLOPT_ENCODING, "");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_AUTOREFERER, true);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
    curl_setopt($ch, CURLOPT_TIMEOUT, 30);
    curl_setopt($ch, CURLOPT_MAXREDIRS, 10);
    curl_setopt($ch, CURLOPT_VERBOSE, true);
    curl_setopt($ch, CURLOPT_HEADER, true);
    curl_setopt_array($ch, $opt);

    $response_raw = curl_exec($ch);

    $header = str_replace("\r\n\r\n", "", substr($response_raw, 0, curl_getinfo($ch, CURLINFO_HEADER_SIZE)));

    foreach (explode("\r\n", $header) as $i => $line){
        if ($i === 0){
            $headers['http_code'] = $line;
        } else {
            list ($key, $value) = explode(': ', $line);
            $headers[$key] = $value;
        }
    }

    $body = substr($response_raw, curl_getinfo($ch, CURLINFO_HEADER_SIZE));

    curl_close($ch);

    return array(
        "header" => $headers,
        "body" => $body,
        "cookies" => COOKIES);
}

【问题讨论】:

  • 添加你的代码,这样我们就可以准确地看到发生了什么
  • @cmorrissey 我已经添加进去了。
  • 我想你想将CURLOPT_VERBOSE 设置为false
  • @cmorrissey 啊,干杯伙伴,解决了。您想将其作为答案提交以便我接受吗?

标签: php curl cron


【解决方案1】:

您想将CURLOPT_VERBOSE 设置为false

【讨论】:

    猜你喜欢
    • 2021-07-06
    • 1970-01-01
    • 2012-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-05
    • 2021-08-09
    相关资源
    最近更新 更多