定义任务类型在二次开发使用会用到,将自己的任务加入到任务队列中执行

image.png

比如我要创建一个定时测试的程序,用于定时处理某某程序代码


1、创建自定义任务类型,如上图所示

名称:中文名字

代码:英文,不可重复


2、单击测试按钮。他会提示

image.png


3、打开或新建文件/config/custom.php,定义这个函数,格式是:

function my_cron_dingshi($params) {

    // $params是你传递过来的参数
    
    // 写你的程序代码
    
    
    // 写你的程序代码
    
    
    // 执行成功:return dr_return_data(1, 'ok'); 
    // 执行失败:return dr_return_data(0, '失败原因'); 
    
    
    return dr_return_data(1, 'ok');
}

image.png


4、然后在点测试按钮,如下图

image.png


5、在程序代码中加入任务队列方法

$rt = \Phpcmf\Service::M('cron')->add_cron(SITE_ID, "dingshi", [
    'code1' => '参数1',
    'code2' => '参数2',
    'code3' => '参数3',
]);
if (!$rt['code']) {
    // 执行提交失败时返回false
}

在开发中,执行这个方法,时,就会加入到任务队里中了

image.png


可以通过设置服务器进行自动执行任务