您好,登錄后才能下訂單哦!
這篇文章主要介紹怎么使用laravel的任務調度,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
laravel中有一個很強大上的功能,只需要在服務器上添加一個cron條目,就可以定時執行所有的laravel任務。
現在有如下數據表:
我想讓cron表中的cron字段的值每分鐘增加1,那么我需要如下步驟:
1、在App\Console\Kernel.php中編寫laravel代碼
protected function schedule(Schedule $schedule) { $schedule->call(function () { DB::table('cron')->increment('cron'); })->everyMinute(); }
2、在服務的/var/spool/cron/root文件中添加代碼
注意:這里最好使用vim編輯器編輯文件,如果使用winscp編輯文件,會出現不執行任務的問題。
使用vim教程鏈接:http://www.cnblogs.com/zzdylan/p/5941706.html
在命令行輸入
crontab -e
添加如下代碼
* * * * * /usr/local/php/bin/php /data/wwwroot/test/artisan schedule:run 1>> /dev/null 2>&1
在命令行輸入
crontab -u root -l
不需要重啟cron服務,因為系統每分鐘都會讀一遍/var/spool/cron目錄下的文件。
如果發現按照如下配置還是不能執行的話,可以用以下方法排除問題:
看一下命令有沒有使用絕對路徑,比如這里使用/usr/local/php/bin/php而不是php,使用/data/wwwroot/test/artisan而不是artisan。
如果已經使用了絕對路徑還是不執行,那就直接在命令行輸入/usr/local/php/bin/php /data/wwwroot/test/artisan schedule:run 1>> /dev/null 2>&1,看看有沒有執行,如果沒有執行,那就是laravel代碼的問題,如果執行了說明是環境變量的問題,好好檢查路徑的問題。如果不知道php在什么地方,在命令行輸入which php,就會提示你php安裝在什么位置了。
以上是“怎么使用laravel的任務調度”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。