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 :
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.
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.
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 :
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.
É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; } }
$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!