Lk.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  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. "SingName" => "【晋江人力资本有限公司】",
  26. ];
  27. $postData = json_encode($data, JSON_UNESCAPED_UNICODE);
  28. $postHeader = [
  29. "Content-Type: application/json; charset=utf-8",
  30. "Content-Length:" . strlen($postData),
  31. ];
  32. //POST方式请求
  33. $curl = curl_init();
  34. curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // 跳过证书检查 -https
  35. curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
  36. curl_setopt($curl, CURLOPT_URL, $url);
  37. curl_setopt($curl, CURLOPT_POST, 1);
  38. curl_setopt($curl, CURLOPT_HEADER, 0);
  39. curl_setopt($curl, CURLOPT_HTTPHEADER, $postHeader);
  40. curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  41. curl_setopt($curl, CURLOPT_POSTFIELDS, $postData);
  42. $result = curl_exec($curl);
  43. curl_close($curl);
  44. $rsp = json_decode($result, true);
  45. if (isset($rsp['code']) && $rsp['code'] == 0) {
  46. return ['code' => 0];
  47. } else {
  48. Log::error('短信发送失败:' . $result . "。原始参数:" . $postData);
  49. return ['code' => 1, 'msg' => "错误码:" . $rsp['errCode']];
  50. }
  51. }
  52. }