2013-10-01 125 views
0

你好,我是有問題cron作業執行瀏覽器,但不是在運行在終端這一腳本的cron,終端

http://subdomain.website.com/database.php?password=mypassword

當我粘貼它的工作原理和瀏覽器這個cron的腳本下載文件到我的本地服務器,但在終端它沒有執行,我已經閱讀了無數的文章在互聯網上,他們說,你不能在你的cron使用特殊的參數,如「密碼= mypassword」

我試過重塑這個命令有許多方法無濟於事,捲曲,搞定,wget和wget -q也不管用。

回答

1

要帶參數的命令行執行PHP,你怎麼稱呼它,像這樣:

$ php /path/to/php/file arg1 arg2 arg3 

然後,你的PHP腳本中訪問使用

$argv[0] // would return /path/to/php/file/ 
$argv[1] // returns arg1 
$argv[2] // returns arg2 

如果你想參數列表使你的腳本,以便它可以通過終端和瀏覽器訪問,你可以做這樣的事情:

$password = isset($argv[1]) ? $argv[1] : $_GET['password']; 

雖然如果您將此用於CRON並且您需要參數,那麼您的程序架構很糟糕。您應該在腳本中硬編碼這些參數,例如變量/屬性/等。

+0

你說得對,程序架構非常糟糕,感謝您的幫助,如果它給我帶來這麼多麻煩,我應該把程序扔掉。 – user2685272