Effectuer des requêtes HTTP avec cURL
Utiliser cURL pour effectuer des requêtes GET et POST vers des API externes.
Effectuer des requêtes HTTP avec cURL est une leçon PHP Academy gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage PHP Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours PHP Academy comprend 4 leçons au total.
Qu’est-ce que cURL ?
cURL est une bibliothèque permettant de transférer des données avec des URL. PHP l’intègre au moyen des fonctions curl_*, ce qui en fait la méthode standard pour appeler des interfaces de programmation externes.
Requête GET de base
Initialisez une ressource cURL, définissez les options, exécutez-la, puis fermez-la.
<?php
$ch = curl_init("https://api.example.com/users");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo $response;CURLOPT_RETURNTRANSFER
Sans cette option, curl_exec() affiche directement la réponse. Définissez-la sur true pour capturer la réponse dans une variable.
Requête POST
Définissez CURLOPT_POST et CURLOPT_POSTFIELDS pour une requête POST.
<?php
$ch = curl_init("https://api.example.com/users");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => json_encode(["name" => "Alice"]),
CURLOPT_HTTPHEADER => ["Content-Type: application/json"],
]);
$response = curl_exec($ch);
curl_close($ch);Définition des en-têtes
Transmettez un tableau de chaînes d’en-tête à CURLOPT_HTTPHEADER.
<?php
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer ".$token,
"Accept: application/json",
]);Récupération du code d’état HTTP
Récupérez le code d’état de la réponse après curl_exec() avec curl_getinfo().
<?php
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
echo $statusCode; // 200, 404, 500, etc.Gestion des erreurs
Vérifiez curl_errno() et curl_error() pour détecter et signaler les erreurs de connexion.
<?php
if (curl_errno($ch)) {
echo "cURL error: ".curl_error($ch);
}
curl_close($ch);Options de délai d’expiration
Définissez des délais d’expiration pour la connexion et l’exécution afin d’éviter que les requêtes restent bloquées.
<?php
curl_setopt_array($ch, [
CURLOPT_CONNECTTIMEOUT => 5, // seconds to connect
CURLOPT_TIMEOUT => 15, // max total seconds
]);Suivi des redirections
Activez le suivi automatique des redirections avec CURLOPT_FOLLOWLOCATION.
<?php
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_MAXREDIRS, 5);Vérification SSL
Par défaut, cURL vérifie les certificats SSL. Ne désactivez jamais cette vérification en production ; faites-le uniquement en développement local avec des certificats autosignés.
<?php
// Development only — NEVER in production!
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);curl_setopt_array()
Utilisez curl_setopt_array() pour définir plusieurs options en un seul appel : le code est plus clair qu’avec des appels répétés à curl_setopt().
Résumé
cURL est le client HTTP standard de PHP. Définissez toujours CURLOPT_RETURNTRANSFER, vérifiez les erreurs avec curl_errno et fermez toujours les ressources avec curl_close.
Vérification rapide
Quelle option capture la réponse de cURL dans une variable ?
Questions Fréquemment Posées
La leçon « Effectuer des requêtes HTTP avec cURL » est-elle gratuite ?
Oui — le texte complet de « Effectuer des requêtes HTTP avec cURL » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours PHP Academy, passe à CoddyKit PRO. Le cours PHP Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Effectuer des requêtes HTTP avec cURL » ?
Utiliser cURL pour effectuer des requêtes GET et POST vers des API externes. Tu pratiques PHP Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer PHP Academy ?
Aucune expérience préalable n'est requise. PHP Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.
Combien de temps prend la leçon « Effectuer des requêtes HTTP avec cURL » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon PHP Academy ?
Oui. Chaque leçon PHP Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Encoder et décoder du JSON
- Effectuer des requêtes HTTP avec cURL
- Gérer les réponses et erreurs d’API
- Créer un client d’API simple