SilverStreet.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. namespace common\components;
  3. use common\helpers\LoggerTool;
  4. use yii\base\Component;
  5. use yii\helpers\Json;
  6. use yii\httpclient\Client;
  7. class SilverStreet extends Component {
  8. public $username;
  9. public $password;
  10. public $sender;
  11. public $apiUrl;
  12. public function sendSms($mobile, $content): bool
  13. {
  14. $client = new Client();
  15. $params = [
  16. 'username' => $this->username,
  17. 'password' => $this->password,
  18. 'sender' => $this->sender,
  19. 'destination' => $mobile,
  20. 'body' => $content,
  21. ];
  22. try {
  23. $response = $client->post($this->apiUrl, $params)->send();
  24. LoggerTool::info(['sendSms', $params, $response->content]);
  25. if ($response->isOk) {
  26. $result = Json::decode($response->content);
  27. if ($result['status'] === 'success') {
  28. return true;
  29. } else {
  30. return false;
  31. }
  32. } else {
  33. return false;
  34. }
  35. } catch (\Exception $e) {
  36. // 处理异常
  37. return false;
  38. }
  39. }
  40. }