| 插件 | API接口 V7.8 |
| 应用作者 | 迅睿官方团队 |
| 发布时间 | 2019-03-14 09:57:26 |
| 更新时间 | 2025-03-06 07:21:54 |
求大神帮忙写一个发送短信的代码
我想达到效果是,宝塔任务执行API,时间字段到期前15天发送短信给管理员{$t.glydh}与用户{$t.khlxr}。
短信内容:{$t.kehuxingming}您好,您的{$t.sccp}将于{$t.daoqishijian}到期,请您及时联系{$t.glydh}续费!
短信是官方短信接口。
现有API代码如下:
<?php
/**
* api 示例文件
* 变量介绍
* $return 表示标准返回变量
*/
$return = []; // 返回数据
$data = \Phpcmf\Service::M()->table('dr_1_news')->order_by("id desc")->getAll();
if ($data) {
foreach ($data as $r) {
$return[] = [
'daoqishijian' => date("m-d",$r['daoqishijian']),
'sccp' => $r['sccp'],
'kehuxingming' => $r['kehuxingming'],
'khlxr' => $r['khlxr'],
'glydh' => $r['glydh'],
];
}
}
字段说明:
售出产品:标准输出:{$t.sccp}
客户姓名标准输出:{$t.kehuxingming}
到期时间:默认输出:{$t.daoqishijian}
客户电话标准输出:{$t.khlxr}
管理员电话:标准输出:{$t.glydh}
插件版权:官方插件
插件名称:API接口
\Phpcmf\Service::M('member')->sendsms_text($mobile, $string); // 用于发送文本内容我只能帮你这么多了,学习是一个过程,不太熟悉二开的话,可以找官方开发或者其他开发者开发,然后再分析分析他们的开发代码,这样自己也学会了开发技巧。<?php $data = \Phpcmf\Service::M()->table('1_news') ->where('sftz', 0)->where("daoqishijian BETWEEN unix_timestamp(now()) and unix_timestamp(DATE_SUB(CURDATE(), INTERVAL -15 DAY))") ->getAll(); if ($data) { foreach ($data as $t) { $txt = $t['kehuxingming'].'您好,您的'.$t['sccp'].'将于'.dr_date($t['daoqishijian']).'到期,请您及时联系'.$t['glydh'].'续费!'; $rt = \Phpcmf\Service::M('member')->sendsms_text($t['khlxr'], $txt); // 用于发送文本内容 if ($rt['code']) { \Phpcmf\Service::M()->table('1_news')->update($t['id'], [ 'sftz' => 1, ]); } else { log_message("error", "任务短信发送失败:".$rt['msg']); } } }