【问题标题】:Why is argv always empty when parameter passed with cron job为什么使用cron作业传递参数时argv总是为空
【发布时间】:2018-08-18 23:20:08
【问题描述】:

我的 cron 作业条目如下所示: /usr/local/bin/php /mydir/cron-jobs/mytest.php 参数=test

在我的 cron 工作中,我尝试了以下方法:

<?php
var_dump($argv);
if (empty($argv)) {
    echo 'empty';
}

和:

<?php  
$argv = $_SERVER['argv'];  
if (empty($argv)) {
    echo 'empty';
}

在这两种情况下,$argv 始终为空。在 php 7.1 上运行。我错过了什么?

【问题讨论】:

  • 检查 php.ini ,值 register_argc_argv 需要在 php.ini 中启用
  • 谢谢 Tasos,这就是问题所在。我很感激。
  • Tasos - 我错了。设置已开启。它在我的 ini 文件中更靠后。它目前已启用,如此处所示。 register_argc_argv = 开启

标签: php cron


【解决方案1】:

我认为你必须使用 $_SERVER['argv'][1];而不是 $_SERVER['argv'];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-08-02
    • 2012-07-03
    • 2016-05-11
    • 2017-05-14
    • 2014-05-28
    • 2021-11-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多