SmsService.php 828 B

123456789101112131415161718192021222324252627282930
  1. <?php
  2. namespace app\common\service;
  3. use app\common\model\SettingModel;
  4. use app\common\model\SmsTemplateModel;
  5. use think\facade\Log;
  6. class SmsService
  7. {
  8. public function send($mobile, $code, $content_param = [])
  9. {
  10. $message = SmsTemplateModel::where('code', $code)->find();
  11. if (empty($message)) {
  12. Log::error('短信模板不存在:' . $code);
  13. return ['code' => 1, 'msg' => '模板不存在'];
  14. }
  15. $msg = $message['content'];
  16. if (!empty($content_param)) {
  17. foreach ($content_param as $k => $v) {
  18. $msg = str_replace('{$' . ($k + 1) . '}', $v, $msg);
  19. }
  20. }
  21. $sms_obj = SettingModel::getConfigValue('sms_type');
  22. $sms = new $sms_obj();
  23. return $sms->send($mobile, ['message' => $msg]);
  24. }
  25. }