點擊連接加入羣【php/web 學習課堂】:https://jq.qq.com/?_wv=1027&k=5645xiwphp
歡迎你們加入,一塊兒討論學習web
這裏咱們要完成的定時任務,比較簡單數據庫
效果:每過X秒 某一些用戶積分 加Xapp
第一步:咱們先建立一個表和插入數據函數
看看效果:學習
ok,表和數據作好了,咱們說一下需求:spa
需求1:沒通過2秒管理員的積分加1,字段is_adm爲1的則是管理員.net
以上爲添加表和數據,並提出需求code
--------------------------------分割線--------------------------------blog
如下內容,咱們會提到如何啓動定時任務,來完成咱們的需求
首先第一步,咱們要檢查咱們數據庫,是否開啓了event(事件)
運行以上代碼,若是你的結果,Value字段的值爲"OFF",表明你的事件屬於關閉狀態,那麼咱們就要開啓它,運行如下代碼:
運行以後,再返回上一個,再次檢查事件的狀態,當結果爲"ON",則表明你的事件已開啓,咱們就繼續往下走。。
既然是定時任務,那麼咱們就要封裝一個函數,流程是這樣的:
那麼咱們先來封裝一個函數:
運行以上代碼成功以後,你們不用提心吊膽,不會馬上修改你的數據,由於這裏只是封裝了一個函數,咱們並無調用它,它僅僅是存在。因此須要寫一個事件,來調用它
運行以上代碼,成功以後,你們也彆着急,還不會馬上運行此事件。雖然在上面,咱們已經開啓了event。可是咱們還要單個來運行,指定一個事件來運行,就跟訪問接口同樣,指定一個接口。。。
這裏能看見,開啓事件,指定的是 e_test 這個事件名字,跟咱們上面建立的是同樣的,那麼運行這一段代碼以後,你會發現,你的表 test_name 裏,is_adm = 1 的行,字段爲 integral(積分) 的會每 2秒 加1
那麼一個簡單的定時任務,咱們完成了。
噢,對了,關閉單個事件,使用如下的代碼:
運行以後,就會中止對 e_test 事件的使用
以上須要注意: