Lk.php 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. <?php
  2. /**
  3. * 手机短信类
  4. */
  5. namespace lk;
  6. use app\common\model\SettingModel;
  7. use think\facade\Log;
  8. class Lk
  9. {
  10. /**
  11. * 短信发送
  12. * @param $mobile
  13. * @param $smslog_param
  14. * @return array
  15. */
  16. public function send($mobile, $smslog_param)
  17. {
  18. $config = SettingModel::getConfigValue(['sms_lk_secretKey', 'sms_lk_secretName']);
  19. $url = "https://api.028lk.com/Sms/Api/Send";
  20. $data = [
  21. "SecretName" => $config['sms_lk_secretName'],
  22. "SecretKey" => $config['sms_lk_secretKey'],
  23. "Mobile" => $mobile,
  24. "Content" => $smslog_param['message'],
  25. ];
  26. $postData = json_encode($data,JSON_UNESCAPED_UNICODE);
  27. $postHeader = [
  28. "Content-Type: application/json; charset=utf-8",
  29. "Content-Length:" . strlen($postData),
  30. ];
  31. //POST方式请求
  32. $curl = curl_init();
  33. curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // 跳过证书检查 -https
  34. curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, true);
  35. curl_setopt($curl, CURLOPT_URL, $url);
  36. curl_setopt($curl, CURLOPT_POST, 1);
  37. curl_setopt($curl, CURLOPT_HEADER, 0);
  38. curl_setopt($curl, CURLOPT_HTTPHEADER,$postHeader);
  39. curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  40. curl_setopt($curl, CURLOPT_POSTFIELDS, $postData);
  41. $result = curl_exec($curl);
  42. curl_close($curl);
  43. if (isset($rsp['code']) && $rsp['code'] == 0) {
  44. return ['code' => 0];
  45. } else {
  46. Log::error('短信发送失败:' . $result . "。原始参数:" . $postData);
  47. return ['code' => 1, 'msg' => "错误码:" . $rsp['errCode']];
  48. }
  49. }
  50. }