webman/process/Task.php

61 lines
1.7 KiB
PHP
Raw Normal View History

<?php
namespace process;
use App\Utils\API\SendCode;
use app\model\UserPhone;
use app\dao\UserRewardDao;
use Workerman\Crontab\Crontab;
/**
* 查询用户是否在线类
*/
class Task
{
public function onWorkerStart()
{
// // 每秒钟执行一次
// new Crontab('*/1 * * * * *', function(){
// echo date('Y-m-d H:i:s')."\n";
// });
// // 每5秒执行一次
// new Crontab('*/5 * * * * *', function(){
// echo date('Y-m-d H:i:s')."\n";
// });
// // 每分钟执行一次
// new Crontab('0 */1 * * * *', function(){
// echo date('Y-m-d H:i:s')."\n";
// });
// // 每5分钟执行一次
// new Crontab('0 */5 * * * *', function(){
// echo date('Y-m-d H:i:s')."\n";
// });
// // 每分钟的第一秒执行
// new Crontab('1 * * * * *', function(){
// echo date('Y-m-d H:i:s')."\n";
// });
// // 每天的7点50执行注意这里省略了秒位
// new Crontab('50 7 * * *', function(){
// echo date('Y-m-d H:i:s')."\n";
// });
// // 每5秒执行一次
new Crontab('0 */1 * * * *', function(){
$phones=UserPhone::all();
foreach($phones as $key =>$value){
//如果大于60秒这里单位是秒就给他20个积分
if($value->time>3600){
$score =intdiv($value->time,3600)*20;
$value->score=$score;
$value->time-=intdiv($value->time,3600)*3600;
$value->save();
UserRewardDao::Onhookincome($value->user_id,$score);
}
}
});
}
}