溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

thinkphp5.1/5.0如何實(shí)現(xiàn)定時(shí)任務(wù)

發(fā)布時(shí)間:2021-02-23 09:15:04 來源:億速云 閱讀:214 作者:清風(fēng) 欄目:編程語言

這篇“thinkphp5.1/5.0如何實(shí)現(xiàn)定時(shí)任務(wù)”除了程序員外大部分人都不太理解,今天小編為了讓大家更加理解“thinkphp5.1/5.0如何實(shí)現(xiàn)定時(shí)任務(wù)”,給大家總結(jié)了以下內(nèi)容,具有一定借鑒價(jià)值,內(nèi)容詳細(xì)步驟清晰,細(xì)節(jié)處理妥當(dāng),希望大家通過這篇文章有所收獲,下面讓我們一起來看看具體內(nèi)容吧。

thinkphp是什么

thinkphp屬于一種免費(fèi)的開發(fā)框架,能夠用于開發(fā)前端網(wǎng)頁(yè),最早thinkphp是為了簡(jiǎn)化開發(fā)而產(chǎn)生的,thinkphp同時(shí)也是遵循Apache2協(xié)議,最初是從Struts演變過來,也把國(guó)外一些好的框架模式進(jìn)行利用,使用面向?qū)ο蟮拈_發(fā)結(jié)構(gòu),兼容了很多標(biāo)簽庫(kù)等模式,它能夠更方便和快捷的開發(fā)和部署應(yīng)用,當(dāng)然不僅僅是企業(yè)級(jí)應(yīng)用,任何php應(yīng)用開發(fā)都可以從thinkphp的簡(jiǎn)單、兼容和快速的特性中受益。

我主要做的是一個(gè)員工生日當(dāng)天發(fā)短信的功能,每天跑一次腳本,

第一步:

a.App/模塊/ 下創(chuàng)建command文件夾

b.我這邊是創(chuàng)建在admin模塊里面,在command文件夾下創(chuàng)建一個(gè)SendMessage.php文件(具體名字自己根據(jù)需求定)

c.復(fù)制下面的代碼到SendMessage.php

<?php
 namespace app\admin\command;
  
 use think\console\Command;
 use think\console\Input;
 use think\console\Output;
 use think\Db;
 use think\Log;
  
 class SendMessage extends Command
 {
     protected function configure(){
         $this->setName('SendMessage')->setDescription("計(jì)劃任務(wù) SendMessage");
     }
  
     //調(diào)用SendMessage 這個(gè)類時(shí),會(huì)自動(dòng)運(yùn)行execute方法
     protected function execute(Input $input, Output $output){
         $output->writeln('Date Crontab job start...');
         /*** 這里寫計(jì)劃任務(wù)列表集 START ***/
  
         $this->birthday();//發(fā)短信
  
         /*** 這里寫計(jì)劃任務(wù)列表集 END ***/
         $output->writeln('Date Crontab job end...');
     }
  
     //獲取當(dāng)天生日的員工 發(fā)短信
     public function birthday()
     {
         echo '這里寫你要實(shí)現(xiàn)的邏輯代碼';
     }
 }

第二步:在APP/command.php里面加上

return ['app\admin\command\SendMessage'];

thinkphp5.1/5.0如何實(shí)現(xiàn)定時(shí)任務(wù)

第三步:設(shè)置crontab計(jì)劃任務(wù)

  1. crontab -l //計(jì)劃任務(wù)列表

  2. crontab -e //編輯新增

  3. crontab -r //刪除

為了方便測(cè)試,可以先設(shè)置成每分鐘執(zhí)行一次 ,記錄一下日志/www/wwwroot/tool/runtime/message/2019.log

  1. */1 * * * * php /www/wwwroot/tool/think SendMessage>>/www/wwwroot/tool/runtime/message/2019.log 2>&1


  2. //監(jiān)控一下你的腳本是不是正常的

  3. tail -f /www/wwwroot/tool/runtime/message/2019.log

感謝你的閱讀,希望你對(duì)“thinkphp5.1/5.0如何實(shí)現(xiàn)定時(shí)任務(wù)”這一關(guān)鍵問題有了一定的理解,具體使用情況還需要大家自己動(dòng)手實(shí)驗(yàn)使用過才能領(lǐng)會(huì),快去試試吧,如果想閱讀更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI