Browse Source

定时任务类添加注释

sugar1569 2 years atrás
parent
commit
2bbdfcb041
1 changed files with 25 additions and 11 deletions
  1. 25 11
      crmeb/app/listener/timer/SystemTimer.php

+ 25 - 11
crmeb/app/listener/timer/SystemTimer.php

@@ -160,33 +160,47 @@ class SystemTimer implements ListenerInterface
             }
         }
     }
-
+    /**
+     *  0   1   2   3   4   5
+        |   |   |   |   |   |
+        |   |   |   |   |   +------ day of week (0 - 6) (Sunday=0)
+        |   |   |   |   +------ month (1 - 12)
+        |   |   |   +-------- day of month (1 - 31)
+        |   |   +---------- hour (0 - 23)
+        |   +------------ min (0 - 59)
+        +-------------- sec (0-59)[可省略,如果没有0位,则最小时间粒度是分钟]
+     */
+    /**
+     * 获取定时任务时间表达式
+     * @param $data
+     * @return string
+     */
     public function getTimerStr($data): string
     {
         $timeStr = '';
         switch ($data['type']) {
-            case 1:
+            case 1:// 每隔几秒
                 $timeStr = '*/' . $data['second'] . ' * * * * *';
                 break;
-            case 2:
+            case 2:// 每隔几分
                 $timeStr = '0 */' . $data['minute'] . ' * * * *';
                 break;
-            case 3:
-                $timeStr = '0 0 */' . $data['hour'] . ' * * *';
+            case 3:// 每隔几时
+                $timeStr = '0 ' . $data['minute'] . ' */' . $data['hour'] . ' * * *';
                 break;
-            case 4:
-                $timeStr = '0 0 0 */' . $data['day'] . ' * *';
+            case 4:// 每隔几日
+                $timeStr = '0 ' . $data['minute'] . ' ' . $data['hour'] . ' */' . $data['day'] . ' * *';
                 break;
-            case 5:
+            case 5:// 每日几时几分几秒
                 $timeStr = $data['second'] . ' ' . $data['minute'] . ' ' . $data['hour'] . ' * * *';
                 break;
-            case 6:
+            case 6:// 每周周几几时几分几秒
                 $timeStr = $data['second'] . ' ' . $data['minute'] . ' ' . $data['hour'] . ' * * ' . ($data['week'] == 7 ? 0 : $data['week']);
                 break;
-            case 7:
+            case 7:// 每月几日几时几分几秒
                 $timeStr = $data['second'] . ' ' . $data['minute'] . ' ' . $data['hour'] . ' ' . $data['day'] . ' * *';
                 break;
         }
         return $timeStr;
     }
-}
+}