2

CakePHP 2.x アプリケーションで cron ジョブを作成しようとしました。しかし、私がオンラインで読んだすべてのリソースは、一貫性がほとんどなく、まったく異なることを行っているか、非常に複雑な用語で説明しているようです.

基本的に、次のファイルを作成しましMyShell.php/app/Console/Command

<?php 

class MyShell extends Shell {

    public function sendEmail() {

        App::uses('CakeEmail', 'Network/Email');

        $email = new CakeEmail();

        $email->from('cameron@driz.co.uk');

        $email->to('cameron@driz.co.uk');

        $email->subject('Test Email from Cron');

        $result = $email->send('Hello from Cron');

    }

}

?>

そして、毎晩真夜中にこのコードを実行すると言いたいです。

次に何をすればいいですか?次の部分は本当に私を混乱させるので!http://book.cakephp.org/2.0/en/console-and-shells/cron-jobs.htmlの本を読んだことがありますが、ターミナルでコードを実行して、特定のタイミングで実行する必要があります。時間など。そして、ホスティングプロバイダーを使用してこれらをかなり簡単に設定できるようです。

しかし、コンソール ディレクトリについてはかなり混乱しています。ここのどのフォルダーに何を入れるべきですか: https://github.com/cakephp/cakephp/tree/master/app/Console

/Console/Command
/Console/Command/Tasks
/Console/Templates

また、ファイルの多くが .php であることにも気付きました (たとえば、私のシェル ファイルも .php です)。

誰かがこれについてもっと光を当てることができますか?

そして、そのコマンドを呼び出すコードは何でしょうか?

たとえば、これは正しくないと推測します。0 0 * * * cd /domains/driz.co.uk/html/App && cake/Console MyShell sendEmail

ありがとう

4

2 に答える 2