amirbagh75 / smsir-php
非官方 sms.ir PHP 包
1.4.0
2023-02-05 16:29 UTC
Requires
- php: ~7.3|~8.0|^8.0.2
- ext-json: *
- guzzlehttp/guzzle: ^7.0.1|^7.4.1
- illuminate/support: ^6.0|^7.0|^8.0|^9.0
README
非官方 sms.ir PHP 包
受官方包启发。官方包仅在 Laravel 中工作!本包适用于任何 PHP 项目
支持的 PHP 版本:7.3, 7.4, 8.0, 8.1
支持的 Laravel 版本:8, 9, 10
如何安装
composer require amirbagh75/smsir-php
示例(纯 PHP)
<?php require_once __DIR__ . '/../vendor/autoload.php'; use Amirbagh75\SMSIR\SmsIRClient; $apiKey = getenv('API_KEY'); $secretKey = getenv('SECRET_KEY'); $lineNumber = getenv('LINE_NUMBER'); $timeOut = 3; $smsir = new SmsIRClient($apiKey, $secretKey, $lineNumber, $timeOut); try { $res = $smsir->getSentMessages(1, 250); print_r($res->messages); print_r($res->countOfAll); } catch (Throwable $e) { error_log($e->getMessage(), 0); }
示例(Laravel)
首先在您的 .env 文件中添加以下环境变量
SMSIR_API_KEY="xxxx"
SMSIR_SECRET_KEY="xxxx"
SMSIR_LINE_NUMBER="xxxx"
SMSIR_HTTP_TIMEOUT="10"
然后按照以下示例使用它
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class Example extends Controller { /** * Handle the incoming request. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function __invoke(Request $request) { // do something ... try { $res = SMSIR::getSentMessages('1399/06/01', '1399/10/01', 1, 250); dd($res); } catch (\GuzzleHttp\Exception\GuzzleException $e) { Log::error($e->getMessage()); } // do something ... } }
当前方法
响应模型结构位于 src/Responses
目录
smsCredit(): CreditResponse getSMSLines(): SMSLinesResponse send(array $messages, array $mobileNumbers, $sendDateTime = null): SendResponse sendVerificationCode(string $code, string $mobileNumber): VerificationCodeResponse ultraFastSend(array $parameters, string $templateId, string $mobileNumber): VerificationCodeResponse getSentMessages($fromDate, $toDate, $pageNumber = 1, $perPage = 100): SentMessagesResponse getReceivedMessages($fromDate, $toDate, $pageNumber = 1, $perPage = 100): ReceivedMessagesResponse
版本控制
作者
- Amirhossein Baghaie - 维护者
- Ariaieboy - 合作者