php – 将$_GET参数传递给cron作业

我是cron工作的新人,我不知道这是否会起作用。

为了安全起见,我考虑制作一个寻找某些GET值(一个用户名,一个密码和一个安全代码)的页面脚本,以确保只有计算机和一个知道所有3的人可以运行该命令。

我做了这个脚本,它在浏览器中运行它,但是可以用GET值运行cron作业吗?

一个例子将是我运行

* 3 * * * /path_to_script/cronjob.php?username=test&password=test&code=1234

这可能吗?

$ _GET []& $ _POST []关联数组仅在通过Web服务器调用脚本时初始化。通过命令行调用时,参数将在$argv数组中传递,就像C.

Contains an array of all the arguments passed to the script when
running from the command line.

你的命令是:

* 3 * * * /path_to_script/cronjob.php username=test password=test code=1234 

然后,您将使用parse_str()设置和访问参数:

<?php

var_dump($argv);

/*
array(4) {
  [0]=>
  string(27) "/path_to_script/cronjob.php"
  [1]=>
  string(13) "username=test"
  [2]=>
  string(13) "password=test"
  [3]=>
  string(9) "code=1234"
}
*/

parse_str($argv[3], $params);

echo $params['code']; // 1234
翻译自:https://stackoverflow.com/questions/11297945/passing-get-parameters-to-cron-job

转载注明原文:php – 将$_GET参数传递给cron作业