LVI. HTTP

Introduction

Cette extension HTTP fournit un jeu de fonctionnalités puissantes pour les applications PHP.

Il devient facile de gérer les URLs HTTP, les dates, les redirections, les en-têtes et les messages, de gérer les négociations avec les clients concernant le langage et les jeux de caractères, mais aussi d'envoyer des données arbitraires.

Elle fournit des fonctionnalités puissantes pour les requêtes, si elle est construite avec le support CURL. Les requêtes parallèles sont disponibles depuis PHP 5 et suivant.

En plus de la référence de l'API de ce manuel, vous pouvez trouver des informations sur l'installation et la configuration mais aussi quelles constantes sont prédéfinies, dans les sections suivantes :

Installation
Configuration
Constantes globales
Types de ressource

Classes

Ces classes sont définies par cette extension, et elles ne seront disponibles que si cette extension a été compilée avec PHP, ou bien chargée dynamiquement.

La classe HttpResponse nécessite au moins PHP 5.1. Toutes les autres classes sont disponibles depuis PHP 5.0.

Note: Soyez prudents ! Quelques méthodes ne sont pas disponibles avec PHP 5.0.

HttpMessage
HttpQueryString
HttpDeflateStream
HttpInflateStream
HttpRequest
HttpRequestPool
HttpResponse

Fonctions

Fonctions internes

Les fonctions HTTP internes lisées sur cette page peuvent être trouvées dans la catégorie réseau .

Les fonctions suivantes ne nécessitent pas la présence du module HTTP : header() , headers_list() , headers_sent() , setcookie() et setrawcookie() .

Table des matières

Installation — Installation de l'extension HTTP
Configuration — Directives de configuration du module http
Ressources — Ressources créées par l'extension HTTP
Constantes — Constantes prédéfinies du module http
Options de la demande — Options utilisables avec la classe HttpRequest et les fonctions de demande
HttpMessage — CLasse HTTP Message
HttpMessage::__construct — Constructeur de la classe HttpMessage
HttpMessage::factory — Crée HttpMessage pour une chaîne
HttpMessage::fromEnv — Crée HttpMessage pourl'environnement
HttpMessage::fromString — Crée un HttpMessage depuis une chaîne de caractères
HttpMessage::toString — Récupère la représentation du message sous la forme d'une chaîne de caractères
HttpMessage::toMessageTypeObject — Crée un objet HTTP en fonction du type de message
HttpMessage::guessContentType — Demande le type de contenu
HttpMessage::detach — Détache un HttpMessage
HttpMessage::prepend — Ajoute un message
HttpMessage::reverse — Renverse la chaîne du message
HttpMessage::send — Envoie le message
HttpMessage::getParentMessage — Récupère le message parent
HttpMessage::getType — Récupère le type du message
HttpMessage::setType — Définit le type de message
HttpMessage::getHttpVersion — Récupère la version HTTP
HttpMessage::setHttpVersion — Définit la version HTTP
HttpMessage::getHeaders — Récupère les en-têtes du message
HttpMessage::getHeader — Récupère les en-têtes
HttpMessage::addHeaders — Ajoute des en-têtes
HttpMessage::setHeaders — Définit les en-têtes
HttpMessage::getBody — Récupère le corps du message
HttpMessage::setBody — Définit le corps du message
HttpMessage::getRequestMethod — Récupère la méthode de la demande
HttpMessage::setRequestMethod — Définit la méthode de la demande
HttpMessage::getRequestUrl — Récupère l'URL de la demande
HttpMessage::setRequestUrl — Définit l'URL de la demande
HttpMessage::getResponseCode — Récupère le code réponse
HttpMessage::setResponseCode — Définit le code réponse
HttpMessage::getResponseStatus — Récupère le statut de la réponse
HttpMessage::setResponseStatus — Définit le statut de la réponse
HttpQueryString — Classe HTTPQueryString
HttpQueryString::__construct — Constructeur de la classe HttpQueryString
HttpQueryString::singleton — Récupère un instance simple de HttpQueryString
HttpQueryString::get — Récupère (une partie) de la requête
HttpQueryString::mod — Modifie la copie de la requête
HttpQueryString::set — Définit les paramètres de la requête
HttpQueryString::toArray — Récupère la requête sous la forme d'un tableau
HttpQueryString::toString — Récupère la requête
HttpQueryString::xlate — Modifie le jeu de caractères de la requête
HttpDeflateStream — Classe de compression du flux HTTP
HttpDeflateStream::__construct — Constructeur de la classe HttpDeflateStream
HttpDeflateStream::update — Met à jour le flux compressé
HttpDeflateStream::flush — Envoi un flux compressé
HttpDeflateStream::finish — Finalise un flux compressé
HttpInflateStream — Décompression d'un flux HTTP
HttpInflateStream::__construct — Constructeur de la classe HttpInflateStream
HttpInflateStream::update — Met à jour un flux décompressé
HttpInflateStream::flush — Envoi un flux décompressé
HttpInflateStream::finish — Finalise un flux décompressé
HttpRequest — Classe HTTPRequest
HttpRequest::addCookies — Ajoute des cookies
HttpRequest::addHeaders — Ajoute des en-têtes
HttpRequest::addPostFields — Ajoute des champs POST
HttpRequest::addPostFile — Ajoute un fichier en POST
HttpRequest::addPutData — Ajoute des données PUT
HttpRequest::addQueryData — Ajoute des paramètres à une requête
HttpRequest::addRawPostData — Ajoute une ligne de données POST
HttpRequest::addSslOptions — Ajoute des options SSL
HttpRequest::clearHistory — Efface l'historique
HttpRequest::__construct — Constructeur de HttpRequest
HttpRequest::enableCookies — Active les cookies
HttpRequest::getContentType — Récupère le type de contenu
HttpRequest::getCookies — Récupère les cookies
HttpRequest::getHeaders — Récupère les en-têtes
HttpRequest::getHistory — Récupère l'historique
HttpRequest::getMethod — Récupère une méthode
HttpRequest::getOptions — Récupère les options
HttpRequest::getPostFields — Récupère les champs POST
HttpRequest::getPostFiles — Récupère les fichiers POST
HttpRequest::getPutData — Récupère des données PUT
HttpRequest::getPutFile — Récupère un fichier PUT
HttpRequest::getQueryData — Récupère les données de la requête
HttpRequest::getRawPostData — Récupère les données POST
HttpRequest::getRawRequestMessage — Récupère le message de la requête
HttpRequest::getRawResponseMessage — Récupère le message de réponse
HttpRequest::getRequestMessage — Récupère le message de la requête
HttpRequest::getResponseBody — Récupère le coprs de la réponse
HttpRequest::getResponseCode — Récupère le code de la réponse
HttpRequest::getResponseCookies — Récupère la réponse des cookies
HttpRequest::getResponseData — Récupère les données de la réponse
HttpRequest::getResponseHeader — Récupère les en-têtes de la réponse
HttpRequest::getResponseInfo — Récupère les informations de la réponse
HttpRequest::getResponseMessage — Récupère le message de la réponse
HttpRequest::getResponseStatus — Récupère le statut de la réponse
HttpRequest::getSslOptions — Récupère les options SSL
HttpRequest::getUrl — Récupère l'url
HttpRequest::resetCookies — Efface les cookies
HttpRequest::send — Envoi une requête
HttpRequest::setContentType — Définit le type de contenu
HttpRequest::setCookies — Définit un cookie
HttpRequest::setHeaders — Définit un en-tête
HttpRequest::setMethod — Définit la méthode
HttpRequest::setOptions — Définit des options
HttpRequest::setPostFields — Définit les champs POST
HttpRequest::setPostFiles — Définit les fichiers POST
HttpRequest::setPutData — Définit les données PUT
HttpRequest::setPutFile — Définit le fichier PUT
HttpRequest::setQueryData — Définit les données de la requête
HttpRequest::setRawPostData — Définit les données POST
HttpRequest::setSslOptions — Définit les options SSL
HttpRequest::setUrl — Définit l'URL
HttpRequestPool — Classe HTTPRequestPool
HttpRequestPool::attach — Attache un objet HttpRequest
HttpRequestPool::__construct — Constructeur de la classe HttpRequestPool
HttpRequestPool::__destruct — Déstructeur de la classe HttpRequestPool
HttpRequestPool::detach — Détache un objet HttpRequest
HttpRequestPool::getAttachedRequests — Récupère les requêtes attachées
HttpRequestPool::getFinishedRequests — Récupère les requêtes terminées
HttpRequestPool::reset — Efface la file d'attente des requêtes
HttpRequestPool::send — Envoie toutes les requêtes
HttpRequestPool::socketPerform — Effectue une action sur le socket
HttpRequestPool::socketSelect — Sélectionne un socket
HttpResponse — Classe HTTP Response
HttpResponse::capture — Capture la sortie du script
HttpResponse::getBufferSize — Récupère la taille du buffer
HttpResponse::getCacheControl — Récupère l'en-tête Cache-Control
HttpResponse::getCache — Récupère le cache
HttpResponse::getContentDisposition — Récupère l'en-tête Content-Disposition
HttpResponse::getContentType — Récupère l'en-tête Content-Type
HttpResponse::getData — Récupère les données
HttpResponse::getETag — Récupère l'ETag
HttpResponse::getFile — Récupère le fichier
HttpResponse::getGzip — Récupère la configuration gzip
HttpResponse::getHeader — Récupère un en-tête
HttpResponse::getLastModified — Récupère l'en-tête Last-Modified
HttpResponse::getStream — Récupère le flux
HttpResponse::getThrottleDelay — Récupère le délai de la commande
HttpResponse::getRequestBody — Récupère le corps de la demande
HttpResponse::getRequestBodyStream — Récupère le flux du corps de la demande
HttpResponse::getRequestHeaders — Récupère les en-têtes de la demande
HttpResponse::guessContentType — Devine le type de contenu
HttpResponse::redirect — Redirection
HttpResponse::send — Envoi la réponse
HttpResponse::setBufferSize — Définit la taille du buffer
HttpResponse::setCacheControl — Définit l'en-tête cache-control
HttpResponse::setCache — Définit le cache
HttpResponse::setContentDisposition — Définit l'en-tête Content-Disposition
HttpResponse::setContentType — Définit l'en-tête content-type
HttpResponse::setData — Définit les données
HttpResponse::setETag — Définit l'ETag
HttpResponse::setFile — Définit le fichier
HttpResponse::setGzip — Définit le mode gzip
HttpResponse::setHeader — Définit un en-tête
HttpResponse::setLastModified — Définit l'en-tête Last-Modified
HttpResponse::setStream — Définit le flux
HttpResponse::setThrottleDelay — Définit le délai de la commande
HttpResponse::status — Envoi le statut de la réponse HTTP
http_cache_etag — Mise en cache en fonction de l'ETag
http_cache_last_modified — Mise en cache en fonction de la date de dernière modification
http_chunked_decode — Décode un fragment de donnée encodé
http_deflate — Compresse des données
http_inflate — Décompresse des données
http_get_request_body_stream — Récupère le corps demandé sous la forme d'un flux
http_get_request_body — Récupère le corps demandé sous la forme d'une chaîne de caractères
http_get_request_headers — Récupère les en-têtes sous la forme d'un tableau
http_date — Compose une date respectant la RFC HTTP
http_support — Vérifie le support HTTP interne
http_match_etag — Cherche un ETag particulier
http_match_modified — Vérifie la date de dernière modification
http_match_request_header — Cherche n'importe quel en-tete
http_build_cookie — Construit le cookie
http_negotiate_charset — Jeu de caractères préféré pour la négociation avec les clients
http_negotiate_content_type — Négocie avec le client le type de contenu préféré
http_negotiate_language — Négocie le langage préféré par les clients
ob_deflatehandler — Gestionnaire de sortie de compression
ob_etaghandler — Gestionnaire de sortie ETag
ob_inflatehandler — Gestionnaire de sortie de décompression
http_parse_cookie — Analyse un cookie HTTP
http_parse_headers — Analyse les en-tetes HTTP
http_parse_message — Analyse un message HTTP
http_parse_params — Analyse la liste des paramètres
http_persistent_handles_count — Récupère les statistiques sur le gestionnaire persistant
http_persistent_handles_ident — Récupère/définit l'identification du gestionnaire persistant
http_persistent_handles_clean — Nettoie le gestionnaire persistant
http_get — Effectue une requête GET
http_head — Effectue une requête HEAD
http_post_data — Effectue une requête POST avec des données pré-encodées
http_post_fields — Effectue une requête POST avec des données à encoder
http_put_data — Effectue une requête PUT avec des données
http_put_file — Effecute une requête PUT avec un fichier
http_put_stream — Effectue une requête PUT avec un flux
http_request_method_exists — Vérifie si la méthode de requête existe
http_request_method_name — Récupère le nom de la requête
http_request_method_register — Enregistre une méthode de requête
http_request_method_unregister — Retire une méthode de requête
http_request — Effectue une requête personnalisée
http_request_body_encode — Encode le corps de la requête
http_redirect — Effectue une redirection HTTP
http_send_content_disposition — Envoi l'en-tête Content-Disposition
http_send_content_type — Envoi le type de contenu
http_send_data — Envoi des données arbitraires
http_send_file — Envoi un fichier
http_send_last_modified — Envoi l'en-tête Last-Modified
http_send_status — Envoi le statut réponse HTTP
http_send_stream — Envoi un flux
http_throttle — Étranglement HTTP
http_build_str — Construit une URL à partir d'une chaîne de caractères
http_build_url — Construit une URL