
Partager:
Acteur de formation avec une thèse sur la comédie, je suis venu au développement PHP par le biais de la scène des rencontres. Vous pouvez me trouver en train de parler et d'écrire sur la technologie, ou de jouer/acheter des disques bizarres de ma collection de vinyles.
Envoi de SMS avec PHP
Temps de lecture : 3 minutes
Cet article a été mis à jour en août 2025
Dans ce tutoriel, nous allons envoyer des SMS avec le moins de lignes de PHP possible. D'une part, avec un script brut, et d'autre part en utilisant un framework d'application web minimal.
Conditions préalables
PHP 8.1+
Composerpour la gestion des paquets
Un Account API de Vonage
Pour réaliser ce tutoriel, vous aurez besoin d'un Account API Vonage.
Vonage API Account
To complete this tutorial, you will need a Vonage API account. If you don’t have one already, you can sign up today and start building with free credit. Once you have an account, you can find your API Key and API Secret at the top of the Vonage API Dashboard.
Comment envoyer du texte avec Raw PHP
Nous allons commencer par créer un nouveau projet Composer et y intégrer le SDK PHP de Vonage. En utilisant la ligne de commande, ajoutez ce qui suit :
mkdir vonage-sms
cd vonage-sms
composer initComposer vous posera une série de questions - vous pouvez les laisser par défaut car nous ne faisons que le strict minimum. Le processus devrait créer votre fichier composer.json fichier. Nous pouvons maintenant ajouter le SDK PHP de Vonage :
composer require vonage/clientMaintenant, créons notre script.
touch send-sms.phpOuvrez le nouveau fichier PHP et assurez-vous que l'autoload de Composer est activé :
<?php
require_once './vendor/autoload.php';
Pour envoyer un SMS, nous avons besoin de trois éléments :
Un ensemble d'informations d'identification extraites du tableau de bord de Vonage
Un objet client
Un texte à envoyer
Compte tenu de ce qui précède, voici les dernières lignes de code :
$credentials = new \Vonage\Client\Credentials\Basic(YOUR_API_KEY, YOUR_API_SECRET);
$client = new Vonage\Client($credentials);
$message = new Vonage\Messages\Channel\SMS\SMSText(
YOUR_NUMBER,
'Vonage',
'Hello from Vonage!'
);
$client->messages()->send($message);Insérez les informations requises dans les variables constantes et cliquez sur "Envoyer" :
Our SMS has been sent!
Quatre lignes de code, c'est déjà pas mal ! La deuxième partie consiste à intégrer ce système dans un cadre web de base afin de pouvoir POSTER un message au lieu de le coder en dur comme nous l'avons fait ci-dessus.
Comment envoyer des SMS via . Slim Framework
Pour le deuxième exemple, nous allons utiliser le Slim FrameworkNous allons donc l'installer avec Composer :
composer require slim/slim:"4".*
composer require slim/psr7La deuxième commande installe l'implémentation PSR-7 (Request Interface) de Slim. Nous allons créer une route qui prend une requête POST avec un corps JSON contenant du texte.
Voici le fichier modifié send-sms.php modifié :
<?php
use Slim\Psr7\Request;
use Slim\Psr7\Response;
require_once '../vendor/autoload.php';
$app = \Slim\Factory\AppFactory::create();
$app->post('/send', function (Request $request, Response $response) {
$rawBody = $request->getBody()->getContents();
$requestData = json_decode($rawBody);
$text = $requestData->text;
$credentials = new \Vonage\Client\Credentials\Basic('232130c9', 's09IJad98fa0t9j09ad8fa90s');
$client = new Vonage\Client($credentials);
$message = new Vonage\Messages\Channel\SMS\SMSText(
YOUR_NUMBER,
'Vonage',
$text
);
$client->messages()->send($message);
$response->getBody()->write("Vonage sent this text!");
return $response;
});
$app->run();Au lieu d'exécuter ce code, nous allons utiliser une plateforme web, donc nous allons utiliser le serveur web intégré de PHP pour lancer un environnement de développement à partir de la ligne de commande :
php -S localhost:8888 -t send-php.phpPour envoyer le message, vous aurez besoin d'un client HTTP qui facilite l'envoi de requêtes POST - j'ai opté pour le client Kong's Insomnia mais vous pouvez également utiliser Postman ou même une requête cURL brute.
API Tooling is super helpful
Conclusion
Nous disposons à présent d'une route permettant d'envoyer le texte du message à un serveur pour qu'il termine le processus. Vous pouvez, bien sûr, ajouter des clés supplémentaires à la charge utile JSON pour ajouter les numéros de téléphone cellulaire de et à. Vous avez envie de construire quelque chose à partir de cela ? Jetez un coup d'œil à notre intégration Laravel ou lisez la suite sur l'envoi de messages avec cette API dans Symfony.
Vous avez une question ou souhaitez partager ce que vous construisez ?
Rejoignez la conversation sur le Communauté Vonage Slack
S'abonner à la Bulletin d'information du développeur
Suivez-nous sur X (anciennement Twitter) pour les mises à jour
Regardez les tutoriels sur notre chaîne YouTube
Connectez-vous avec nous sur la page Vonage Developer sur LinkedIn
Restez connecté et tenez-vous au courant des dernières nouvelles, astuces et événements concernant les développeurs.
Ressources complémentaires
Envoi de SMS depuis PHP avec basculement : La boulangerie Cupcake
Type Safety Done Right - PHP Array Hacking (en anglais)
Partager:
Acteur de formation avec une thèse sur la comédie, je suis venu au développement PHP par le biais de la scène des rencontres. Vous pouvez me trouver en train de parler et d'écrire sur la technologie, ou de jouer/acheter des disques bizarres de ma collection de vinyles.
