Home PHP Framework ThinkPHP ThinkPHP6 SMS verification code integration: realizing mobile phone verification function

ThinkPHP6 SMS verification code integration: realizing mobile phone verification function

Aug 25, 2023 pm 04:55 PM
thinkphp SMS verification code Phone verification

ThinkPHP6 SMS verification code integration: realizing mobile phone verification function

ThinkPHP6 SMS verification code integration: realizing mobile phone verification function

Foreword:
In modern society, mobile phones have become one of the indispensable tools in people’s lives. one. In website or APP development, verification of user mobile phone numbers is also a common functional requirement. This article will introduce how to integrate the SMS verification code function in the ThinkPHP6 framework to realize the mobile phone verification function.

1. Preparation

  1. Make sure you have installed the ThinkPHP6 framework, or you can install it through composer
  2. Register an account with an SMS service provider, such as Alibaba Cloud, Tencent Cloud, Cloud Pian, etc., and purchase relevant SMS service packages

2. Integrate the SMS verification code function

  1. Install the SMS sending extension package
    Execute the following command in the root directory of the ThinkPHP6 project to install the SMS sending extension package:
    composer require overtrue/easy-sms -vvv
  2. Configure SMS service
    In the config directory in the root directory of the project, Create a new sms.php file and add the following configuration:
return [
    'default' => [
        'gateways' => [
            'aliyun',  // 阿里云短信服务
        ],
    ],
    'gateways' => [
        'aliyun' => [
            'access_key_id' => 'your-access_key_id',  // 你的阿里云access_key_id
            'access_key_secret' => 'your-access_key_secret',  // 你的阿里云access_key_secret
            'sign_name' => 'your-sign_name',  // 你的短信签名名称
        ],
    ],
];
Copy after login
  1. Create a verification code sending class
    In the common directory under the app directory, create a new Sms class for sending Verification code:
<?php
namespace appcommon;

use thinkacadeCache;
use thinkacadeConfig;

class Sms
{
    // 发送验证码
    public static function sendCode($phoneNumber)
    {
        // 生成随机验证码
        $code = mt_rand(100000, 999999);
        
        // 发送短信
        $result = EasySmsFacadesEasySms::send($phoneNumber, [
            'template' => 'your-template-id',  // 你在短信服务提供商处创建的短信模板ID
            'data' => [
                'code' => $code,
            ],
        ]);
        
        // 验证码存入缓存,有效时间为5分钟
        Cache::set('sms_code:' . $phoneNumber, $code, 300);
        
        return $result;
    }
}
Copy after login
  1. Call the verification code sending class
    Where you need to send the verification code, call the sendCode method of the Sms class to send the verification code:
<?php
namespace appindexcontroller;

use appcommonSms;

class User
{
    public function sendSmsCode()
    {
        $phoneNumber = '手机号码';
        Sms::sendCode($phoneNumber);
    }
}
Copy after login
  1. Verification verification code
    Where you need to verify the verification code entered by the user, you can verify it in the following ways:
<?php
namespace appindexcontroller;

use thinkacadeCache;

class User
{
    public function checkCode()
    {
        $phoneNumber = '手机号码';
        $code = '用户输入的验证码';
        
        // 从缓存中获取正确的验证码
        $correctCode = Cache::get('sms_code:' . $phoneNumber);
        
        // 验证用户输入的验证码是否正确
        if ($code == $correctCode) {
            // 验证通过
            // 进行相关操作
        } else {
            // 验证失败
            // 提示用户验证码错误
        }
    }
}
Copy after login

3. Summary
Passed In the above steps, we successfully integrated the SMS verification code function in the ThinkPHP6 framework and implemented the mobile phone verification function. When the user needs to conduct mobile phone verification, he or she can send a verification code so that the user can enter the correct verification code for verification. This can increase the security of operations such as user login, registration, and modification of important information.

Finally, it should be noted that when purchasing SMS service packages, choose according to your actual needs to avoid wasting resources and costs. In addition, in order to prevent malicious text messages from being sent, there are generally certain restrictions, such as only a certain number of text messages can be sent per minute, only a certain number of text messages can be sent per day, etc. In actual use, pay attention to using the SMS verification code function according to the regulations and configuration of the SMS service provider.

The above is the detailed content of ThinkPHP6 SMS verification code integration: realizing mobile phone verification function. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

What is the method to forcefully cancel the account on Xiaohongshu? Pay attention to what? What is the method to forcefully cancel the account on Xiaohongshu? Pay attention to what? May 06, 2024 pm 04:40 PM

Sometimes users may need to force log out of their accounts, which may be for personal privacy, security, or other reasons. This article will introduce in detail Xiaohongshu’s method of forced account cancellation and what you need to pay attention to during this process. 1. What is the method for forced account cancellation in Xiaohongshu? Xiaohongshu account is a necessary process, and users need to consider carefully before executing it. The following are the basic steps for registering an account: 1. Log in. Users need to log in to their Xiaohongshu account. 2. Enter settings and find the "Settings" or "Account and Security" option in the Xiaohongshu app. 3. Find the logout option Look for "Logout Account" or similar option in the settings menu. 4. Read the cancellation instructions. Before performing the cancellation operation, the platform will display the cancellation instructions, including important information such as that once the account is canceled, it will not be restored.

How to modify railway 12306 personal information How to modify railway 12306 personal information Apr 30, 2024 am 11:00 AM

There are five steps to modify personal information on Railway 12306: Log in to the website and change the password (optional) Modify personal information, such as name, ID number, date of birth, etc. Modify common contact information, such as name, ID number, mobile phone number, etc. Passenger information, such as name, ID number, date of birth, gender, etc., can be modified after verification with the mobile phone verification code.

What should I do if my QQ security phone number and password have been changed? What should I do if my QQ security phone number and password have been changed? May 04, 2024 pm 09:10 PM

What should I do if my QQ account has been stolen, the security question and the security phone number have been changed? 1. Retrieve password: Click "Forgot Password" on the login page to retrieve the password through your mobile phone or email. If your mobile phone number or email address has also been changed, please follow the steps below. Mobile phone binding: If you have bound your mobile phone number to your QQ account, you can try to retrieve your password through mobile phone verification. 2. Use alternate contact information to retrieve your QQ account: If you filled in the alternate contact information when registering your QQ account, such as binding your email or QQ Security Center, you can retrieve your QQ account through these methods. 3. Try the following measures: Try to retrieve the password through QQ mailbox or other bound secure mobile phone numbers. The QQ account was stolen, and the mobile phone number, password and real-name authentication were changed.

How to authenticate real name in qq How to authenticate real name in qq May 04, 2024 pm 09:18 PM

QQ real-name authentication requires access to Tencent customer service platform, which can be authenticated through mobile phone text messages or ID cards. After real-name authentication, you can enhance account security, use more functions and comply with national regulations. During authentication, you need to provide true personal information. After authentication, the account will be bound to the filled in information and cannot be changed at will.

How to run thinkphp project How to run thinkphp project Apr 09, 2024 pm 05:33 PM

To run the ThinkPHP project, you need to: install Composer; use Composer to create the project; enter the project directory and execute php bin/console serve; visit http://localhost:8000 to view the welcome page.

There are several versions of thinkphp There are several versions of thinkphp Apr 09, 2024 pm 06:09 PM

ThinkPHP has multiple versions designed for different PHP versions. Major versions include 3.2, 5.0, 5.1, and 6.0, while minor versions are used to fix bugs and provide new features. The latest stable version is ThinkPHP 6.0.16. When choosing a version, consider the PHP version, feature requirements, and community support. It is recommended to use the latest stable version for best performance and support.

How to register railway 12306 email address How to register railway 12306 email address Apr 30, 2024 am 11:33 AM

The steps to register the Railway 12306 email address are as follows: Visit the 12306 website and click "Register"; select "Email Registration" and fill in the email, name, mobile phone and other information; set the password and security questions according to the prompts; enter the email verification code and mobile phone verification code for verification Information; click "Complete Registration".

How to run thinkphp How to run thinkphp Apr 09, 2024 pm 05:39 PM

Steps to run ThinkPHP Framework locally: Download and unzip ThinkPHP Framework to a local directory. Create a virtual host (optional) pointing to the ThinkPHP root directory. Configure database connection parameters. Start the web server. Initialize the ThinkPHP application. Access the ThinkPHP application URL and run it.

See all articles