国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

原生PHP及thinkphp6接入阿里云短信

這篇具有很好參考價值的文章主要介紹了原生PHP及thinkphp6接入阿里云短信。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

  1. 申請accesskey

原生PHP及thinkphp6接入阿里云短信
原生PHP及thinkphp6接入阿里云短信
原生PHP及thinkphp6接入阿里云短信

獲取到Accesskey ID和Accesskey Secret保存下來,一會要用到

  1. 添加測試手機號,在接口測試能否正常發(fā)送

原生PHP及thinkphp6接入阿里云短信
  1. 下載阿里云短信sdk,使用composer下載,沒有安裝請先安裝

原生PHP及thinkphp6接入阿里云短信

安裝可以安裝到任意文件夾下,后面代碼寫好后,直接復制到tp項目內就行,最新版本安裝可能composer查找不到,所以我這里安裝2.0.20

composer require alibabacloud/dysmsapi-20170525 2.0.20
  1. 安裝完成后文件目錄結構

原生PHP及thinkphp6接入阿里云短信

新建src文件夾,在里面創(chuàng)建一個類Sample,復制如下代碼

<?php

// This file is auto-generated, don't edit it. Thanks.
namespace AlibabaCloud\SDK\Sample;

use AlibabaCloud\SDK\Dysmsapi\V20170525\Dysmsapi;
use \Exception;
use AlibabaCloud\Tea\Exception\TeaError;
use AlibabaCloud\Tea\Utils\Utils;

use Darabonba\OpenApi\Models\Config;
use AlibabaCloud\SDK\Dysmsapi\V20170525\Models\SendSmsRequest;
use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;

class Sample {

    /**
     * 使用AK&SK初始化賬號Client
     * @param string $accessKeyId
     * @param string $accessKeySecret
     * @return Dysmsapi Client
     */
    public static function createClient($accessKeyId, $accessKeySecret){
        $config = new Config([
            // 必填,您的 AccessKey ID
            "accessKeyId" => $accessKeyId,
            // 必填,您的 AccessKey Secret
            "accessKeySecret" => $accessKeySecret
        ]);
        // 訪問的域名
        $config->endpoint = "dysmsapi.aliyuncs.com";
        return new Dysmsapi($config);
    }

    /**
     * @param string[] $args
     * @return void
     */
    public static function main($phone,$code){

        // 工程代碼泄露可能會導致AccessKey泄露,并威脅賬號下所有資源的安全性。以下代碼示例僅供參考,建議使用更安全的 STS 方式,更多鑒權訪問方式請參見:https://help.aliyun.com/document_detail/311677.html
        $client = self::createClient("填第一步的Accesskey ID", "填第一步的Accesskey Secret");
        $sendSmsRequest = new SendSmsRequest([
            "signName" => "阿里云短信測試",
            "templateCode" => "SMS_154950909",
            "phoneNumbers" => "$phone",
            "templateParam" => "{\"code\":\"$code\"}"
        ]);
        $runtime = new RuntimeOptions([]);
        try {
            // 復制代碼運行請自行打印 API 的返回值
            $data=$client->sendSmsWithOptions($sendSmsRequest, $runtime);
            echo json_encode($data);
        }
        catch (Exception $error) {
            if (!($error instanceof TeaError)) {
                $error = new TeaError([], $error->getMessage(), $error->getCode(), $error);
            }
            // 如有需要,請打印 error
            Utils::assertAsString($error->message);
        }
    }
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
    require_once $path;
}

//Sample::main(array_slice($argv, 1));
  1. 演示調用(到這里我們的接口就已經接好了,現(xiàn)在調用Sample類的main方法就能發(fā)送短信了

原生調用:在src文件夾下新建一個index.php ,訪問index.php。傳入參數56789就調用成功了

<?php
include "Sample.php";

if($_POST['sms']==56789){
  $phone=$_POST['phone'];
  $code=rand(100000,999999);
  $data=[
    'phone'=>$phone,
    'code'=>$code
  ];
  \AlibabaCloud\SDK\Sample\Sample::main($phone,$code);
}

?>

thinkphp調用:

(一)將cmsPhp文件夾移到tp6項目public文件夾下

原生PHP及thinkphp6接入阿里云短信

(2)新建控制器Code

原生PHP及thinkphp6接入阿里云短信

Code.php代碼

<?php

namespace app\controller;
include "./cmsPhp/src/Sample.php";
use AlibabaCloud\SDK\Sample\Sample;
use think\facade\Db;
class Code
{
  public function code2(){
    if($_POST['sms']==56789){
      $phone=$_POST['phone'];
      $code=rand(100000,999999);
      $date=Date('Y-m-d H:i:s');
      $data=[
        'phone'=>$phone,
        'code'=>$code,
        'date'=>$date
      ];
      $suc=Db::table('code')->save($data);
      Sample::main($phone,$code);
    }
  }
  
}

訪問code2方法傳入手機號就調用成功了文章來源地址http://www.zghlxwxcb.cn/news/detail-454778.html

到了這里,關于原生PHP及thinkphp6接入阿里云短信的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 阿里云短信php-sdk對接

    阿里云短信php-sdk對接

    早期用過阿里的大魚,但現(xiàn)在看已經合并在了阿里云的短信服務 1)簽名 2)短信模板 3)accessKeyId? 4)accessKeySecret 國內消息-添加簽名,添加完需要阿里云審核,大概2小時左右 國內消息-添加模板,添加完需要阿里云審核,大概2小時左右 ? 右上角-賬號-AccessKey管理 創(chuàng)建Acces

    2024年02月10日
    瀏覽(14)
  • 【ThinkPHP6系列學習-1】下載并部署ThinkPHP6

    【ThinkPHP6系列學習-1】下載并部署ThinkPHP6

    在指定目錄(www目錄)下打開cmd,使用composer下載thinkphp6,命令后面的thinkphp6就是下載的目錄名,可以隨意修改。 下載后,查看目錄結構,tp6的目錄結構和tp5不同,默認是單應用(只有一個模塊),如果需要多應用,需要開啟多應用模式,后面文章再講。 主要用到的目錄有

    2024年02月05日
    瀏覽(35)
  • thinkphp6 入門教程合集(更新中) thinkphp6 入門(1)--安裝、路由規(guī)則、多應用模式

    thinkphp6 入門(1)--安裝、路由規(guī)則、多應用模式_軟件工程小施同學的博客-CSDN博客 thinkphp6 入門(2)--視圖、渲染html頁面、賦值_軟件工程小施同學的博客-CSDN博客 thinkphp6 入門(3)--獲取GET、POST請求的參數值_thinkphp獲取get傳值_軟件工程小施同學的博客-CSDN博客 thinkphp6 入門(

    2024年02月09日
    瀏覽(52)
  • thinkphp6和thinkphp5有什么區(qū)別

    Thinkphp6.0完全開發(fā)手冊 采用PHP7強類型(嚴格模式) tp5 環(huán)境要求PHP = 5.4.0 ThinkPHP6.0的環(huán)境要求 PHP = 7.2.5 6.0版本開始,必須通過Composer方式安裝和更新,所以你無法通過Git下載安裝。 支持更多的PSR規(guī)范 V6.0.10版本開始 支持 psr7 response 多應用支持 tp5默認使用多應用模式部署 tp6 安

    2024年02月06日
    瀏覽(21)
  • thinkphp6-配置設置與獲取,Thinkphp6自定義配置文件以及調用(config文件夾下的配置)

    thinkphp6-配置設置與獲取,Thinkphp6自定義配置文件以及調用(config文件夾下的配置)

    環(huán)境變量 設置環(huán)境變量 /.env [DATABASE] USERNAME = root PASSWORD = 123456 獲取環(huán)境變量 app/controller/Index.php 訪問測試 http://codeit.org.cn/index {“username”:“root”,“password”:“123456”} 1.在thinkphpconfig下新建一個test.php配置文件 .test.php文件內容 調用test.php配置文件 配置 配置設置 config/app.

    2024年02月13日
    瀏覽(35)
  • ThinkPHP6中使用GatewayWorker

    首先是先安裝 下載demo 服務器開通TCP端口 8282 、 1238 將 ApplicationsYourApp 目錄隨便放ThinkPHP6的哪個位置,我這里放在了 appgatewayws 目錄中 配置 composer.json 保存后執(zhí)行 composer dumpautoload 更新 將 Events.php 、 start_businessworker.php 、 start_gateway.php 和 start_register.php 文件中的 require_once

    2024年02月22日
    瀏覽(21)
  • thinkphp6 動態(tài)開啟debug模式

    1、找到config/app.php?? 2、自定義開啟debug參數名稱:示例參數為debug,可以根據自己項目情況自定義? 3、必須同時設置App::debug 和 Env::set(\\\'APP_DEBUG\\\')

    2024年02月07日
    瀏覽(21)
  • ThinkPHP6.0 鏈式SQL語句

    查詢單個數據 查詢結果集(查詢結果返回多條數據的意思) ? 查詢一個字段 ? 查詢一列 添加數據 修改數據 刪除數據 根據主鍵刪除 ? 條件刪除 ? 查詢數據 格式 where(\\\'字段名\\\',\\\'查詢表達式\\\',\\\'查詢條件\\\'); 模糊查詢 區(qū)間查詢 IN查詢 Not Null Null 鏈式操作示例 field操作(輸出選擇

    2024年02月11日
    瀏覽(29)
  • Thinkphp6 如何 生成二維碼

    來自:https://www.is5.me/notes/php/633.html

    2024年02月11日
    瀏覽(19)
  • Thinkphp6使用RabbitMQ消息隊列

    Thinkphp6使用RabbitMQ消息隊列

    Thinkphp6連接使用RabbitMQ(不止tp6,其他框架對應改下也一樣),使用Docker部署RabbitMQ,在上一篇已經講了-傳送門-。 開始前先進入RabbitMQ的web管理界面,選擇Queues菜單,點擊底部的Add a new queue,新建一個test的隊列。 安裝thinkphp6框架 安裝workerman擴展 安裝rabbitmq擴展 生產者 在a

    2023年04月23日
    瀏覽(57)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包