1

コードイグナイターを使用して、cron ジョブから関数を実行しています。

class event extends CI_Controller {
  public function newEvent()
    {
         //some process here using the parameter
    }

} 

cron コマンド:

* */2 * * * /usr/bin/php /var/www/project/index.php 'event/newEvent/parameter'

cronコマンドに書かれているようなパラメータを渡して、newEvent関数でそのパラメータを使って何らかの処理をしたい。

cron コマンドからパラメーターを受け取るために、関数にどのような追加コードを記述する必要がありますか。

ありがとう

4

3 に答える 3

2

私はこれを試しましたが、うまくいきました。

* */2 * * * /usr/bin/curl http://domain.com/index.php/event/newEvent/parameter
于 2013-03-28T14:19:42.577 に答える
2

関数にパラメーターを追加するだけです。

class event extends CI_Controller {

    public function newEvent($parameter)
    {
        //some process here using the parameter
        echo $parameter;
    }

} 

デフォルトのルーティング エンジンは、パラメーターを処理して関数に渡します。そのパラメーターがオプションの場合は、デフォルトで自由に初期化してください。

    public function newEvent($parameter = 'default')
    {
        //some process here using the parameter
        echo $parameter;
    }

編集: @dm03514 の回答を読んだ後、ドキュメントではアプリケーションをスラッシュではなくスペースで呼び出すことを推奨しているようです。

cron コマンドは

* */2 * * * /usr/bin/php /var/www/project/index.php event newEvent parameter
于 2013-03-28T14:04:29.443 に答える
2

CIは、ドキュメントでコマンドラインからコマンドを実行する方法を説明しています

php index.php event newEvent parameter

于 2013-03-28T14:08:10.287 に答える