传递crontab一个变量并从PHP中读取它?

Hes*_*eed 8 php cron

我创建了一个crontab规则:

* * * * * php /my/directory/file.php

我想从这个crontab传递一个在file.php中使用的变量.

这样做的最佳方法是什么?

Mar*_*eed 11

请记住,从shell运行PHP与在Web服务器环境中运行它完全不同.如果您之前没有完成命令行编程,您可能会遇到一些惊喜.

也就是说,将信息传递给命令的通常方法是将其放在命令行上.如果你这样做:

 php /my/directory/file.php "some value" "some other value"
Run Code Online (Sandbox Code Playgroud)

然后在您的脚本中,$argv[1]将设置为"some value"并将$argv[2]设置为"some other value".($argv[0]将被设置为"/my/directory/file.php").


kba*_*kba 7

从命令行执行PHP脚本时,可以访问变量count $argc和数组中的实际值$argv.一个简单的例子.

考虑test.php

<?php
printf("%d arguments given:\n", $argc);
print_r($argv);
Run Code Online (Sandbox Code Playgroud)

执行此操作使用php test.php a b c:

4 arguments given:
Array
(
    [0] => test.php
    [1] => a
    [2] => b
    [3] => c
)
Run Code Online (Sandbox Code Playgroud)