Liker
Commenter
Partager
Offrir

La librairie Curl de PHP

Mis à jour il y a 5 mois

Apprenez à utiliser la librairie Curl de PHP qui permet de se connecter et communiquer avec un serveur distant depuis votre application

Wilo Ahadi

Auteur

Wilo A.

Technologies

PHP

La librairie cURL, qu'est-ce ?

La librairie cURL (libcurl), sigle de Client Url Library, est un support pour PHP qui permet de se connecter et communiquer avec différents types de serveurs via différents types de protocoles.

Curl supporte actuellement les protocoles HTTP (GET, POST, PUT, ...), HTTPS, FTP, IDAP, FILE, DICT, TELNET, ...

Comment utiliser cUrl ?

Pour utiliser cUrl depuis un script PHP, Il faut commencer par initialiser une nouvelle session cURL par la fonction curl_init(), renseigner ensuite les différentes options à envoyer avec la requête par la fonction curl_setopt(), exécuter la session par curl_exec() puis fermer la session une fois l’exécution terminée par curl_close(). Vous allez bien le voir aux exemples ci-dessous.

Vous pouvez retrouver la liste de toutes les fonctions cURL au lien suivant : https://www.php.net/manual/fr/ref.curl.php

Exemples

Exemple 1

Créons un programme qui récupère la liste de toutes les compétitions de football depuis une API et les affiche sur la page :

<?php

$session_curl = curl_init('http://api.football-data.org/v2/competitions'); // on initialisation la session cURL 

/*
on renseignement l'option "CURLOPT_HEADER" avec "true" comme valeur
pour inclure l'en-tête dans la réponse
*/
curl_setopt($session_curl , CURLOPT_HEADER, true);

$data = curl_exec($session_curl ); // on execute la session, en récupérant la réponse dans $data

curl_close($session_curl ); // on ferme la session cURL 

echo $data; // On affiche la réponse

?>


Exemple 2

Créons une fonction qui permet de se connecter à un serveur en envoyant en POST l'adresse email et le mot de passe :

<?php

function connectUser($adresse, $email, $password) {

	$ch = curl_open();

	curl_setopt($ch, CURLOPT_URL, $adresse);

	$user  = array('email' => $email,  'password' => $password);

	curl_setopt($ch, CURLOPT_URL, $adresse);

	curl_setopt($ch, CURLOPT_POST, true);

	curl_setopt($ch, CURLOPT_POSTFIELDS, $user);

	$reponse = $curl_exec($ch);

	curl_close($ch);

	echo $reponse;

}

// On appel la fonction "connectUser"
connectUser("http://www.siteweb.com", "[email protected]", "mon_mot_de_passe");

?>


Vous pouvez vous inspirer de ces deux exemples pour faire communiquer votre script PHP avec un serveur distant de votre choix. Amusez-vous bien !


Cette publication vous a plu ?
Encouragez-nous en la partageant sur les réseaux sociaux

Wilo Ahadi
Wilo Ahadi, l'auteur

Passionné de l'informatique, je suis spécialiste en techniques des systèmes et réseaux, développeur web et mobile, Infographiste et designer, ... J'aime partager mon expérience en formant sur Akili School

Voir profil Suivre