如何在Laravel-4.2及更高版本中设置调度程序

时间:2016-04-28 11:20:47

标签: php mysql scheduler laravel-4.2

我在.. \ app \ commands \

创建了job.php
public function fire()  {
    $this->dailyAt('09:00', function(){
    Mail::send('emails.test', array(), function($message) {
             $message->to('address', '')->subject('subject')->attach('path');
         });
    });//end daily
 }

protected function dailyAt($time, callable $callback){
    if(date('H:i', $this->timestamp) === $time) call_user_func($callback);
}

我把' php artisan cron:run'在手动命令提示符下,它运行完美。我怎么安排这个?我知道有类似* * * * *的东西,但是,我不知道如何使用* * * * *

我正在使用Laravel-4.2

请帮助

1 个答案:

答案 0 :(得分:0)

基本上你想创建一个cron作业。 您可以通过将命令添加到crontab中来完成此操作。 在项目类型crontab -e的根目录下的cli中, 然后添加命令。

/10 * * * * /usr/bin/php pathto/artisan namespace:command

,其中  /10 * * * *是时间(这将每10分钟启动一次),/usr/bin/php php cli的位置,pathto/artisan namespace:command是将要执行的命令的位置。 例如:

/10 * * * * /usr/bin/php /var/www/fooproject/artisan cron:run

更多info,以及有关cronjobs的内容。