运行 cron 作业以将多个参数传递给同一个 PHP 脚本


Running cron jobs to pass multiple params to same PHP script

我需要每天自动调用单个PHP脚本,但每次传递不同的参数(大约30个)。除了为每次调用脚本创建一个单独的 cron 之外,是否有一种巧妙的方法来处理这个问题?感谢任何指示。

您可以使用不同的命令行参数运行脚本。检查getopt函数或$argv/$argc变量。

$argv数组将包含多个参数:

http://php.net/manual/en/reserved.variables.argv.php

<?php
var_dump( $argv );
?>

用法示例:

$ php cli.php param1 param2 param3

输出:

array(4) {
  [0]=>
  string(7) "cli.php"
  [1]=>
  string(6) "param1"
  [2]=>
  string(6) "param2"
  [3]=>
  string(6) "param3"
}

您可以创建一个参数.txt文件,其中包含所有 30 个左右的参数,用换行符分隔。然后创建一个单独的计数器.txt文件,其中包含 0。

读取计数器.txt文件。读取参数文件,按换行符将其拆分,然后访问计数器文件指示的索引位置以获取参数。

(您的文件逻辑在这里)

递增计数器,将新计数器写入计数器.txt(覆盖它),然后继续该过程,达到上限后重置计数器。