通过cli传递参数来执行php


execute php via cli passing arguments

如何通过命令行执行传递get参数的php脚本。我一直在尝试执行以下

chmod +x /media/linkstation/myfolder/import/import.php

sudo php5 ./media/linkstation/myfolder/import/import.php?id=4

但不能工作Could not open input file

您正试图将文件协议与http协议混合使用,这是行不通的。

参数需要与文件路径分开。

编辑:

只要路径正确,您可以尝试:

sudo php5 ./media/linkstation/myfolder/import/import.php id=4

现在,第一个参数$argv[1]是查询字符串,只要它是单个字符串(或用引号括起来),它就会出现在脚本的接收端。之后你可以随心所欲地对待它。

然而,有更合适的方式来传递参数。您可能会发现命令行选项更有用:http://php.net/manual/en/function.getopt.php

sudo php5 ./media/linkstation/myfolder/import/import.php --id="4"