摘要:應用場景定時腳本任務需要在凌晨計算前一日的數據并匯總到統計表中。命令復雜的定時任務可以配合命令。命令按照命令行文檔,了解它的使用和配置。使用命令腳本名稱生成執行文件,文件在中查看。
應用場景:
定時腳本任務
需要在凌晨計算前一日的數據并匯總到統計表中。
Artisan命令
復雜的定時任務可以配合Artisan命令。
按照 Laravel Artisan命令行 文檔,了解它的使用和配置。
使用Artisan命令 php artisan make:command {腳本名稱} 生成執行文件,文件在 app/Console/Commands 中查看。
添寫Artisan命令的名稱和描述,例如:
protected $signature = "stat:generate {start? : 腳本統計的起始時間(選填 eg.2017-10-01 )} {end? : 腳本統計的結束時間(選填)}"; protected $description = "生成每日的統計信息";
$signature屬性中的 start? end? 表示可輸入的可選參數,這里提供了腳本開始和結束時間的可選項,用于生成指定時間日期內的統計信息,eg. php artisan stat:generate 2017-08-01 。
在handle()方法中寫程序部分
public function handle() { // 如果未輸入日期參數,默認選擇前一天作為統計時間(??是php7新語法) $this->date = $this->argument("start") ?? date("Y-m-d", strtotime("-1 day")); $endDate = $this->argument("end") ?? date("Y-m-d"); // 判斷輸入的日期格式是否正確 if (!strtotime($this->date) || !strtotime($endDate)) { $this->error("請輸入正確的日期格式!");die; } // 循環執行每一天的統計腳本 while ($this->date < $endDate) { // 這里是需要執行的統計邏輯,sql等 $this->_active_num_game(); // 每執行一次,統計日期加1天 $this->date = date("Y-m-d", strtotime("{$this->date} +1 day")); } }定時腳本任務:
將以下命令添加到cron 中
* * * * * php /path-to-your-project/artisan schedule:run >> /dev/null 2>&1
所有的計劃任務定義在 AppConsoleKernel 類的 schedule 方法中,Artisan命令寫在commands屬性中。
protect $commands = [ Commands{聲明的腳本文件名稱}::class ]; protected function schedule(Schedule $schedule) { // 上面的Artisan命令將在每晚執行 $schedule->command("stat:generate")->daily(); }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/30651.html
摘要:高性能高精度定時服務,輕松管理千萬級定時任務。支持任務到期觸發和。支持創建延時任務和定時到期任務,和原生保持相同接口,輕松使用。不支持任務輸出任務鉤子及維護模式。是不指定任務名時自動生成,每個任務名必須唯一,相同任務名重復定義將會自動覆蓋。 Forsun高性能高精度定時服務,輕松管理千萬級定時任務。 定時服務項目地址:https://github.com/snower/forsun l...
摘要:項目概述糖果盒子是采用開發的站點導航應用,專注分享優質開發資源站點,希望成為開發人員最喜愛的的書簽導航。線上地址糖果盒子開發者的書簽導航地址求環境要求部署安裝本項目代碼使用框架開發,本地開發環境使用。 showImg(https://segmentfault.com/img/remote/1460000012018405?w=3346&h=1950);showImg(https://s...
摘要:項目概述糖果盒子是采用開發的站點導航應用,專注分享優質開發資源站點,希望成為開發人員最喜愛的的書簽導航。線上地址糖果盒子開發者的書簽導航地址求環境要求部署安裝本項目代碼使用框架開發,本地開發環境使用。 showImg(https://segmentfault.com/img/remote/1460000012018405?w=3346&h=1950);showImg(https://s...
摘要:項目概述糖果盒子是采用開發的站點導航應用,專注分享優質開發資源站點,希望成為開發人員最喜愛的的書簽導航。線上地址糖果盒子開發者的書簽導航地址求環境要求部署安裝本項目代碼使用框架開發,本地開發環境使用。 showImg(https://segmentfault.com/img/remote/1460000012018405?w=3346&h=1950);showImg(https://s...
閱讀 2578·2021-09-06 15:02
閱讀 3207·2021-09-02 10:18
閱讀 2829·2019-08-30 15:44
閱讀 691·2019-08-30 15:43
閱讀 1956·2019-08-30 14:08
閱讀 2764·2019-08-30 13:16
閱讀 1405·2019-08-26 13:52
閱讀 936·2019-08-26 12:21