Laravel 5.4 在瀏覽器上訪問定時任務

  1. 問題來源:
    場景一:因為有時候我們雖然寫好了定時任務蜕企,但是我們卻沒有權限去服務器上執(zhí)行暗挑。
    場景二:我們的測試人員要測某一個流程困乒,這個流程需要手動執(zhí)行開發(fā)寫的定時任務蝗肪,開發(fā)說你去服務器上執(zhí)行哪個哪個定時任務就行了袜爪,估計測試會跟你急眼的,他哪里知道你的定時任務放在哪里了薛闪,又該怎么去執(zhí)行辛馆,這時候就需要我們將我們所有的跟測試相關的定時任務都顯示到頁面上,然后讓測試選擇執(zhí)行哪個腳本就可以了豁延。是不是很方便昙篙,廢話少說,看實現(xiàn)诱咏。

  2. 首先在路由文件中加上以下代碼苔可,

     #定時任務相關,上線后刪除
     if (env('APP_ENV') != 'live') {
         require (__DIR__ . '/Routes/console.php');
     }
    
  3. app/Http/Routes/console.php 下加入如下代碼:

    Route::group(['prefix' => 'console'], function () {
    
       //取出我們需要的所有定時任務的列表
       Route::get('/', function () {
           $list = Artisan::all();/*將所有的定時任務取出來,如果沒有可能是需要裝一下_ide_helper.php拓展包*/
           $tmpArr = [];
           foreach ($list as $key => $val) {
               $isMatched = preg_match('/(user|Fund|command|market|emp):\w+/', $key, $matches);/*將我們需要的定時任務取出來*/
               if (!$isMatched) {
                   continue;
               }
               //將定時任務名稱與描述關聯(lián)成數(shù)組
               $tmpArr[$key] = $val->getDescription();
           }
       dd($tmpArr);//顯示定時任務的列表
    });
    //運行我們的要運行的定時任務命令
    Route::get('/{name}/{param?}', function ($name = null, $param = null) {
         $list = Artisan::all();
         //判斷輸入的命令是否在命令列表中
         if (!array_key_exists($name, $list)) {
            dd('沒有此命令');
         }
         //定時任務執(zhí)行的時長設置袋狞,要不瀏覽器中容易超時
         set_time_limit(300);
         //執(zhí)行定時任務
         $str = "cd " . base_path() . " && php artisan $name $param";
         exec($str,$output, $return_var);
         dd(implode("\r\n",$output));
    });
    
  4. 演示一下:
    首先在瀏覽器中調用 http://test/console/

     輸出定時任務列表:
       array:3 [▼
         "command:ChangeTime" => "修改時間"
         "command:UpdateStaus" => "修改狀態(tài)"
         "command: SendMessage" => "發(fā)消息"
       ]
    

    運行我們需要運行的定時任務:
    http://test/console/command:ChangeTime
    出現(xiàn)了

     ""
    

說明我們的定時任務跑成功了

[參考鏈接](https://laravel-china.org/articles/5230/share-a-little-knowledge-of-how-laravel-54-accesses-a-timed-task-on-a-browser

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末焚辅,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子硕并,更是在濱河造成了極大的恐慌法焰,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,496評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件倔毙,死亡現(xiàn)場離奇詭異埃仪,居然都是意外死亡,警方通過查閱死者的電腦和手機陕赃,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,187評論 3 385
  • 文/潘曉璐 我一進店門卵蛉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人么库,你說我怎么就攤上這事傻丝。” “怎么了诉儒?”我有些...
    開封第一講書人閱讀 157,091評論 0 348
  • 文/不壞的土叔 我叫張陵葡缰,是天一觀的道長。 經常有香客問我,道長泛释,這世上最難降的妖魔是什么滤愕? 我笑而不...
    開封第一講書人閱讀 56,458評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮怜校,結果婚禮上间影,老公的妹妹穿的比我還像新娘。我一直安慰自己茄茁,他們只是感情好魂贬,可當我...
    茶點故事閱讀 65,542評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著裙顽,像睡著了一般付燥。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上锦庸,一...
    開封第一講書人閱讀 49,802評論 1 290
  • 那天机蔗,我揣著相機與錄音,去河邊找鬼甘萧。 笑死萝嘁,一個胖子當著我的面吹牛,可吹牛的內容都是我干的扬卷。 我是一名探鬼主播牙言,決...
    沈念sama閱讀 38,945評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼怪得!你這毒婦竟也來了咱枉?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,709評論 0 266
  • 序言:老撾萬榮一對情侶失蹤徒恋,失蹤者是張志新(化名)和其女友劉穎蚕断,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體入挣,經...
    沈念sama閱讀 44,158評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡亿乳,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,502評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了径筏。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片葛假。...
    茶點故事閱讀 38,637評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖滋恬,靈堂內的尸體忽然破棺而出聊训,到底是詐尸還是另有隱情,我是刑警寧澤恢氯,帶...
    沈念sama閱讀 34,300評論 4 329
  • 正文 年R本政府宣布带斑,位于F島的核電站鼓寺,受9級特大地震影響,放射性物質發(fā)生泄漏勋磕。R本人自食惡果不足惜侄刽,卻給世界環(huán)境...
    茶點故事閱讀 39,911評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望朋凉。 院中可真熱鬧,春花似錦醋安、人聲如沸杂彭。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,744評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽亲怠。三九已至,卻和暖如春柠辞,著一層夾襖步出監(jiān)牢的瞬間团秽,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,982評論 1 266
  • 我被黑心中介騙來泰國打工叭首, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留习勤,地道東北人。 一個月前我還...
    沈念sama閱讀 46,344評論 2 360
  • 正文 我出身青樓焙格,卻偏偏與公主長得像图毕,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子眷唉,可洞房花燭夜當晚...
    茶點故事閱讀 43,500評論 2 348

推薦閱讀更多精彩內容

  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理予颤,服務發(fā)現(xiàn),斷路器冬阳,智...
    卡卡羅2017閱讀 134,631評論 18 139
  • 工廠模式類似于現(xiàn)實生活中的工廠可以產生大量相似的商品蛤虐,去做同樣的事情,實現(xiàn)同樣的效果;這時候需要使用工廠模式肝陪。簡單...
    舟漁行舟閱讀 7,724評論 2 17
  • Composer Repositories Composer源 Firegento - Magento模塊Comp...
    零一間閱讀 3,956評論 1 66
  • 先說幾句廢話驳庭,調和氣氛。事情的起由來自客戶需求頻繁變更见坑,偉大的師傅決定橫刀立馬的改革使用新的框架(created ...
    wsdadan閱讀 3,046評論 0 12
  • 冬日晨陽照山暖嚷掠, 無風村莊炊煙直。
    zhaitianhong閱讀 358評論 0 0