如何将参数传递给bat文件中的php脚本

时间:2015-04-03 16:22:25

标签: php windows batch-file localhost

我正在尝试添加一个跟踪某些统计信息的脚本,并每24小时向我发送一次电子邮件给Windows任务调度程序。

我这样做的方法是使用bat文件。

该脚本每分钟运行一次,但只在我添加email=true时发送电子邮件。

过去,我曾经通过xampp运行此网址:http://localhost/path/here/script.php?email=true

我试图从Windows任务调度程序中做同样的事情,但我不知道如何添加此参数。

我的bat文件包含:

@ECHO OFF
C:\xampp\php\php.exe -f "C:\xampp\htdocs\path\here\script.php?email=true"

但这似乎没有诀窍。

提前感谢任何能够帮助并澄清如何正确完成此操作的人。

1 个答案:

答案 0 :(得分:5)

CLI参数的工作方式不同。您可以将其作为

运行
C:\xampp\php\php.exe -f "C:\xampp\htdocs\path\here\script.php" -- email=true

注意第一个--,它将php.exe参数与参数分隔到您的脚本。

但这还不够,因为参数现在存储在$argv数组中。因此,您可以将其检查为$sendEmail = in_array('email=true', $argv);

或者(您需要更多选项),您可以使用getopt等内容。

如果您需要它在$_GET,请查看此SO answer