2013-07-12 99 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