Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在cron中向文件发送多个命令?_Php_Parameters_Cron - Fatal编程技术网

Php 如何在cron中向文件发送多个命令?

Php 如何在cron中向文件发送多个命令?,php,parameters,cron,Php,Parameters,Cron,我有一个包含多个动态参数的文件。我想在主cron文件中写入文件时发送这些参数。类似这样的东西-> */15 * * * * /usr/bin/php /a/b/c.php parameter1 parameter2 parameter3 parameter4 现在我试着解决这个问题,但我的文件没有执行。 我关心的是我的php文件将如何获取这些参数?? 当只有两个参数时,我将如何编写这个命令??? 我的cron和php将如何识别哪个参数是哪个数据和所有的?? 请指教 */15 * * * * "

我有一个包含多个动态参数的文件。我想在主cron文件中写入文件时发送这些参数。类似这样的东西->

*/15 * * * * /usr/bin/php /a/b/c.php parameter1 parameter2 parameter3 parameter4
现在我试着解决这个问题,但我的文件没有执行。 我关心的是我的php文件将如何获取这些参数?? 当只有两个参数时,我将如何编写这个命令??? 我的cron和php将如何识别哪个参数是哪个数据和所有的?? 请指教

*/15 * * * * "/usr/bin/php /a/b/c.php parameter1 parameter2 parameter3 parameter4"
也许

还可以将其作为查询字符串传递?p1=123&p2=432&p3=456 在脚本中,您只需执行一个parse_字符串,将其转换为数组…

在这种情况下,脚本中的$argv数组将包含这些参数

您还可以制作包含以下内容的可执行文件:

#!/usr/bin/php
<?
    require('yourscript.php');

并使用chmod+x文件使其可执行。只是不要将文件名传递给crontab中的php解释器。

要使此脚本正常工作,需要采用以下方法:

在cron脚本中,将参数设置为每个查询字符串。例如,将p1=1234设置为参数1等

在PHP脚本中,需要引用数组以获得传入的参数

$argv[1]将是参数1,$argv[2]是参数2,依此类推

通过使用“分解”命令将关键点与值分开,可以识别哪个参数是哪个参数:

for($x=1; $x < $argc; $x++) {
    list($key, $value) = explode('=', $argv[1]);
    $paramarray[$key] = $value;
}

但是,我如何使用这种文件调用发送查询字符串:/home/abc/xyz/ert.php???在http://类型的URL中可以使用查询字符串,但如何以路径格式编写???