使用:
php -q /home/site/public_html/cron/file.php
不起作用:
php -q /home/site/public_html/cron/file.php?variable=1
有什么建议吗?我需要将变量发送为$ _GET(或不是)
答案 0 :(得分:1)
命令行参数在$argv
而不是普通$_GET
/ $_POST
- 数组
当然,这不适用于URI样式的参数(?variable=1
- 部分)。因此,您必须将其称为:php -q /path/to/script.php 1
。
作为替代方案,您可以使用getopt
:
<?php
$shortopts = implode("", array(
"v:"
));
$longopts = array(
"variable:", // Required value
);
$options = getopt($shortopts, $longopts);
var_dump($options);
并将其称为php -q /path/to/script.php --variable=1
。
答案 1 :(得分:1)
做这样的事情
curl http://hostname/cron/file.php?variable=1
并在file.php中管理代码以获取$ _GET [variable]
这可以表现为一个简单的浏览器调用,但仅限于你的shell /终端
希望这有帮助
答案 2 :(得分:0)
解决这个问题最简单的方法(假设是public_html,好吧,公共WWW),就是让cron调用wget或curl来访问PHP文件,这样就可以正常处理URL变量。
答案 3 :(得分:-1)
-q表示没有头,所以我假设没有空间用于获取字段,至少我希望如此:D
格尔茨