我知道可以将作业执行的输出记录到FILE,但我想要的是实际调用另一个传递该日志数据的PHP脚本,以便我可以用php处理它:
<?php
$cronLog = file_get_contents('php://input'); // get the cronjob log
save_to_database($cronLog);
在crontab中就是这样:
*/1 * * * * /usr/bin/php /path/to/CRON.php >> /usr/bin/php /path/to/my/php/save_to_database.php
我不是unix专家,这甚至可能吗?
答案 0 :(得分:0)
您缺少的是|
管道运营商。目前您正在使用的>>
将附加到文件中,并将垃圾添加到右侧脚本中。
你真正想要的是:
* * * * * php -q /path/to/first.php | php -q /path/to/read_stdin.php
这会将左侧php脚本的stdout传递给右侧的php脚本,例如,您可以使用fopen('php://stdin', 'r');
读取该脚本。
管道非常方便,wikipedia knows more about them,如果你想了解更多。