ホームページ >バックエンド開発 >PHPチュートリアル >Laravel「標準」によるSMS認証コード送信機能を開発
Laravel は、シンプルでエレガントな PHP Web 開発フレームワーク (PHP Web フレームワーク) です。次に、この記事では、Laravel での SMS 認証コード送信機能の「標準」開発について説明します。必要な方は参照してください。
#Laravel の概要
Laravel は、シンプルでエレガントな PHP Web 開発フレームワーク (PHP Web フレームワーク) です。ヌードルのような乱雑なコードから解放され、完璧なネットワーク APP を構築するのに役立ち、コードの各行が簡潔で表現力豊かになります。Laravel での SMS 認証コード送信機能の「標準」開発要件シナリオ
携帯電話またはメールに「認証コード」または「メッセージ通知」を送信します。完成
まず、Laravelの仕様としてはLaravelの「メッセージ通知」を利用することになっており、ここでは「検証」というシナリオをベースにしています。コード"。この要件は、ほぼすべてのソフトウェア システムで使用されます。通知シーンの作成
最初のステップは、作成が成功した後、phpArtisan make:notification を使用して通知クラスを作成することです。デフォルトでは、toMail と toArray という 3 つの通知クラスが存在します。検証コードが送信されるため、このコントロール クラスの名前は VerificationCode です。 次に、検証コードのデータ モデルとデータ テーブルの移行を作成します。phpArtisan make:model \"VerificationCode\" -m を使用して、データ モデルと移行を直接簡単に作成できます。 ThinkSNS の移行は次のとおりです:#ファクトリ モードに参加し、すぐに送信します。database/factories/ModelFactory.php を開き、通知データ モデルに関するファクトリ定義を追加します。
#このようにして、検証コードをすばやく作成し、factory(\Zhiyi\Plus\Models\VerificationCode::class) ファクトリ関数を通じて通知を送信できます。
まず、データ テーブルの移行には、通知チャネル識別子であるフィールド チャネルがあります。この値を使用して検証コードの送信方法を決定できます。この操作は通知クラスの via で実装されます:
選択した方法は、チャネル値は、任意の値にすることができます。この通知チャネルを実装している限り、送信できます。Laravel には、いくつかの送信チャネル データベース、メール、nexmo
#実際には、通知クラスを作成するときに toMail メソッドが完成しているので、そのメソッドを直接変更できます。メッセージの内容。
SMS 確認コードの送信を完了します
テキスト メッセージの送信には、overtrue/easy-sms パッケージを使用します。これは、An Zhengchao によって開発されたテキスト メッセージ送信クライアントであり、多くのテキスト メッセージ プラットフォームが組み込まれており、実装も優れています。 (Tucao: コントラクトの呼び出し方法に従ってゲートウェイを通過しないなど、細部には問題がありますが) 最初に SMS を利用してクライアント パッケージ コンポーザーに overtrue/easy-sms が必要なメッセージを送信してから、新しい構成を作成します/config/sms.php、コンテンツは何ですか? easy-sms ホームページの指示に従って追加してください (記事の文字数を減らすために、Alibaba の設定のみを保持します)。 ): メッセージ送信者が構成を読みやすくするための検証コード シナリオ コードなど、さまざまなシナリオ用のチャネル構成を追加しました。 。 次に、AppServiceProvider.php を開いて、以下をレジスタに追加します: ここまでで、Laravel への EasySms の統合は完了しましたが、実際の機能はまだ開発されていません。 SMS 送信チャネルの開発 なぜ開発するのか?まず、easy-sms は多くの機能をサポートしています。送信プラットフォームごとに通知送信チャネル クラスを開発することを検討することも、SMS 送信チャネル クラスを 1 つだけ開発することもできます。 SMS 戦略。検証コードを複数のプラットフォームに送信するメカニズム。 まず、新しい app/Notifications/Channels/SmsChannel.php ファイルを作成します。Laravel には生成機能がないため、これを自分で作成する必要があります。 SmsChannel の内容は次のとおりです。 easy-sms に基づく SMS 通知送信チャネルが完成しました。 メッセージを送信する開発シナリオ この部分は完全に easy-sms 開発に属し、次の内容の新しい VerificationCodeMessage.php を作成します。 : 次に、VerificationCode 検証コード通知クラスに戻り、toSms メソッドを追加します。コードは次のとおりです。 さて、開発は完了しました。 検証コードの送信 検証コードのデータモデル作成時に「ファクトリ」に追加されているので、ファクトリを利用できるようになります。直接機能が完成しました。デモを送信してください: 上記はこの記事の全内容であり、皆様の学習に役立つことを願っています。 PHPの中国語サイトです! 関連する推奨事項: もう一度文句を言いますが、easy-sms のコントラクト設計にもこの考えがあるはずですが、実際のゲートウェイが呼び出されたときに、getContent/getTemplate/getData はゲートウェイをまったく通過しません。 。 。
上記のコードはすべて ThinkSNS Plus からのものです
以上がLaravel「標準」によるSMS認証コード送信機能を開発の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。