downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

Installation> <hash
[edit] Last updated: Mon, 01 Nov 2010

view this page in

LIV. 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

Table des matières
Installation -- Installation et configuration de l'extension HTTP
Configuration -- Directives de configuration du module http
Constantes -- constantes prédéfinies du module HTTP
HttpMessage -- CLasse HTTP Message
HttpMessage::__construct -- Constructeur de la classe HttpMessage
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 HTTPResponse
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::guessContentType -- Devine le type de contenu
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 -- Dfinit 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
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_ctype -- Négocie le type de contenu préféré par les clients
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_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 -- Désenregistre 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
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


Installation> <hash
[edit] Last updated: Mon, 01 Nov 2010
 
add a note add a note User Contributed Notes HTTP
henke dot andersson at comhem dot se 14-Jan-2006 01:01
If you want to make outgoing http connections with php, concider the curl extension.
woei at xs4all dot nl 30-Nov-2005 07:57
Actually, if you want to redirect a user why let HTML or JavaScript do it? Simply do this:

header("Location: http://www.example.com/");
WeeJames 07-Jul-2004 11:39
Regarding what the guy before said.  We've experienced problems where certain firewalls have encrypted the HTTP_REFERER meaning that it doesnt always contain the place you've come from.

Better to track where the user has come from either in a form post or in the url.
27-Apr-2004 07:05
in reference to toashwinisidhu's and breaker's note, a more effective way would be to use meta-tag redirect, for example.

<?php
$url
= "http://somesite.com/index.php"; // target of the redirect
$delay = "3"; // 3 second delay

echo '<meta http-equiv="refresh" content="'.$delay.';url='.$url.'">';

?>

The meta goes in the head of the HTML.
This method does not require javascript and is supported by most browsers and is rarely, if ever, filterd out.
toashwinisidhu at yahoo dot com 21-Apr-2004 03:55
The method given below may not sometimes work.
The following method has always worked with me:
just put the following 3 lines in your PHP code

?>
<body onload=setTimeout("location.href='$url'",$sec)>
<?PHP
-------?>

$sec is the time in second after which the browser would automatically go to the url. Set it to 0 if you do not want to give any time.
You can use this function on the events of various html/form objects (eg.-onclick for button).eg.
<input type=button value="Go to Php.net" onclick=setTimeout("location.href='php.net'",0)>
Use this to one step back
<input type="button" value="Back" onclick=history.go(-1)>
jeffp-php at outofservice dot com 04-Jan-2001 08:37
$HTTP_RAW_POST_DATA --

You'll usually access variables from forms sent via POST method by just accessing the associated PHP global variable.

However, if your POST data is not URI encoded (i.e., custom application that's not form-based) PHP won't parse the data into nice variables for you.  You will need to use $HTTP_RAW_POST_DATA to access the raw data directly. (This should return a copy of the data given to the PHP process on STDIN; note that you wan't be able to open STDIN and read it yourself because PHP already did so itself.)

 
show source | credits | sitemap | contact | advertising | mirror sites