Méthode PHP pour implémenter la fonction de code de vérification SMS via la plateforme SMS

WBOY
Libérer: 2023-05-22 08:58:01
original
1207 Les gens l'ont consulté

Avec la popularité croissante de l'Internet mobile et des téléphones mobiles, les codes de vérification par SMS sont devenus un moyen important de vérification de sécurité. Lors de l'inscription sur le site Web, de la connexion, de la récupération du mot de passe et d'autres opérations, les utilisateurs doivent souvent saisir le code de vérification SMS reçu pour terminer l'opération. Aujourd'hui, nous allons présenter en détail comment utiliser PHP pour implémenter la fonction de code de vérification SMS via la plateforme SMS.

1. Choisissez une plateforme SMS

Avant d'activer la fonction de code de vérification PHP SMS, vous devez d'abord choisir une plateforme SMS. Il existe de nombreuses plates-formes SMS sur le marché, telles que YimeiSoftStone, Ronglian Cloud Communications, Yunpian.com, etc. Lors du choix d'une plateforme, vous devez prendre en compte les facteurs suivants :

  1. stabilité

La stabilité de la plateforme SMS est très importante, si le texte les messages sont envoyés fréquemment. Des problèmes tels que des échecs et des retards apporteront une très mauvaise expérience aux utilisateurs et affecteront même l'expérience utilisateur.

  1. Price

Les prix des différentes plateformes SMS varient considérablement et vous devez choisir en fonction de vos propres besoins et de votre budget. De manière générale, les plateformes disposant de leurs propres canaux d’envoi de SMS indépendants sont plus chères, mais leur stabilité et leur taux de réussite d’envoi sont souvent plus élevés.

  1. Fonctions prises en charge

Différentes plates-formes SMS prennent en charge différentes fonctions Certaines plates-formes peuvent fournir des interfaces API puissantes qui peuvent être facilement implémentées par le code de vérification SMS, le marketing. SMS, code de vérification vocale et autres fonctions, certaines plateformes ne proposent qu'une simple interface d'envoi de SMS.

Lors du choix d'une plateforme de messagerie texte, vous devez tenir compte des facteurs ci-dessus en fonction de votre situation réelle et choisir une plateforme qui vous convient.

2. Enregistrez un compte et obtenez une clé API

Après avoir choisi une plateforme SMS, vous devez d'abord créer un compte sur la plateforme et obtenir une clé API à utiliser dans Code PHP Appeler l'interface fournie par la plateforme.

Lors du processus d'enregistrement d'un compte, vous devez fournir des informations pertinentes sur l'entreprise, telles que le nom de l'entreprise, les certificats, etc. Ensuite, vous devez vérifier le code de vérification SMS ou utiliser d'autres méthodes d'authentification d'identité pour terminer l'enregistrement du compte.

Après avoir terminé l'enregistrement du compte, vous devez créer l'application correspondante sur la plateforme. Lors du processus de création de l'application, vous devez généralement fournir le nom de l'application, la description de l'application, la signature SMS et d'autres informations. , et vous devez postuler pour obtenir l'API dans la clé d'arrière-plan.

3. Appelez l'interface d'envoi de SMS en arrière-plan

Après avoir obtenu la clé API, vous pouvez écrire du code PHP en arrière-plan et appeler l'interface fournie par la plateforme SMS pour mettre en œuvre la fonction d’envoi du code de vérification SMS. En prenant Yunpian.com comme exemple, voici la méthode d'implémentation spécifique :

  1. Installer la bibliothèque PHP CURL

PHP doit utiliser CURL pour envoyer des requêtes HTTP à la bibliothèque, si elle n'est pas installée, vous devez d'abord l'installer.

  1. Écrivez une fonction pour envoyer un code de vérification par SMS

Écrivez une fonction pour envoyer un code de vérification par SMS et encapsulez-le dans une classe pour une réutilisation facile dans le programme. Voici un exemple de code :

<?php

class SmsHelper{
  private static $apiUrl = 'https://sms.yunpian.com/v2/sms/single_send.json'; //短信发送接口地址
  private static $apiKey = 'xxxx'; //API 密钥,需要替换成自己的

  /**
   * 发送短信验证码
   * @param $mobile 手机号码
   * @param $code   验证码
   * @return bool
   */
  public static function sendVerifyCode($mobile, $code){
    $postData = [
      'apikey' => self::$apiKey,
      'mobile' => $mobile,
      'text'   => '【签名】您的验证码是'.$code.'。'
    ];

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, self::$apiUrl);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept:text/plain;charset=utf-8', 'Content-Type:application/x-www-form-urlencoded', 'charset=utf-8'));
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, 10);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postData, '', '&'));
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); //不校验 SSL 证书
    $result = curl_exec($ch);
    $error = curl_error($ch);
    curl_close($ch);
    if($result === false || !empty($error)) return false;

    $json = @json_decode($result, true);
    if(!is_array($json)) return false;

    return !empty($json['code']) && $json['code'] == 0;
  }
}
Copier après la connexion

$apiUrl et $apiKey dans le code sont respectivement l'adresse de l'interface d'envoi de SMS et la clé API fournies par la plateforme SMS, et doivent être remplacés par les valeurs fourni par votre propre plateforme. Dans la fonction qui envoie le code de vérification par SMS, deux paramètres, le numéro de téléphone portable et le code de vérification, doivent être transmis. Renvoie vrai en cas de succès et faux en cas d'échec.

4. Implémentez la fonction de code de vérification sur la page front-end

Après avoir appelé l'API de la plateforme SMS en arrière-plan pour envoyer le code de vérification SMS, vous devez également pour appeler l'interface d'arrière-plan sur la page frontale pour terminer l'envoi et la vérification du code de vérification.

La façon d'envoyer le code de vérification est généralement de soumettre le numéro de téléphone portable sur la page et d'appeler la fonction écrite ci-dessus pour envoyer le code de vérification par SMS en arrière-plan pour envoyer le code de vérification. La vérification du code de vérification peut être implémentée sur la page. Une fois que l'utilisateur a saisi le code de vérification, l'interface d'arrière-plan est appelée via AJAX pour vérification et les informations d'invite correspondantes sont fournies.

Lors de la vérification du code de vérification, vous devez veiller à empêcher le swiping malveillant et à limiter le nombre d'erreurs. Vous pouvez éviter cela en définissant la durée de validité du code de vérification SMS, le nombre maximum de codes de vérification envoyés en une seule fois et la limite d'accès IP.

5. Résumé

Grâce à l'introduction de cet article, nous avons appris en détail comment utiliser PHP pour implémenter la fonction de code de vérification SMS via la plateforme SMS. Bien sûr, il ne s'agit que d'une méthode de mise en œuvre, et il existe d'autres options parmi lesquelles choisir, telles que l'utilisation du SDK SMS, l'appel d'une passerelle SMS, etc. Dans les projets réels, vous devez tenir compte de manière globale des besoins et du budget réels pour choisir une solution qui vous convient.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal