2013-07-12 101 views
0

如何通过命令行执行php脚本传递get paramateres。我一直在努力执行以下通过cli传递参数执行php

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

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

,但将无法正常工作Could not open input file

回答

1

您试图混合使用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"

+0

感谢我是这么认为的反馈。什么是正确的语法? – fefe

+0

看看这个答案http://stackoverflow.com/questions/3848901/how-to-pass-query-string-parameters-to-the-php-binary – DevZer0

+0

如果我使用PHP CGI比它的工作PHP-CGI -f /media/linkstation/myfolder/import/import.php id = 4 但是可以为此创建一个cronjob? – fefe