7.12 CURL 
7 Index des fonctions 
 Manuel PHP 
 . Introduction . Pré-requis . Installation . Constantes prédefinies . Exemples . curl_close . curl_errno . curl_error . curl_exec . curl_getinfo . curl_init . curl_multi_add_handle . curl_multi_close . curl_multi_exec . curl_multi_getcontent . curl_multi_info_read . curl_multi_init . curl_multi_remove_handle . curl_multi_select ->curl_setopt . curl_version
 
  | 
 
  7.12.20 curl_setopt()Modifie une option de transfert CURL[ Exemples avec curl_setopt ]   PHP 4 >= 4.0.2 
bool
 curl_setopt (
resource
 
ch
 ,
string
 
option
 ,
mixed
 
value
 )
curl_setopt
  fixe les options de transfert de la
    session CURL identifiée par  
ch
 .
     
option
  est le nom de l'option à fixer,
    et  
value
  est sa valeur.
    
value
  doit être de type "long" pour
    les options suivantes (spécifiée par  
option
 ) :
     
 
- 
curlopt_infilesize
  : Lorsque vous
       téléchargez un fichier sur un site distant, cette
       option sert à indiquer à  
PHP
  la taille maximale du
       fichier attendu.
      
 
- 
curlopt_verbose
  : Choisissez une valeur non nulle
       pour que CURL vous affiche tous les événements.
      
 
- 
curlopt_header
  : Choisissez une valeur non nulle
       pour que CURL inclut l'en-tête dans la valeur de retour.
      
 
- 
curlopt_noprogress
  : Choisissez une valeur non nulle
       pour que  
PHP
  n'affiche pas l'état des transferts CURL.
        
| Note |  | 
 
PHP
  choisit automatiquement une valeur non nulle. Ne changez cette valeur
         que le temps du débuggage.
         
 |   
 
- 
curlopt_nobody
  : Choisissez une valeur non nulle
       pour que le corps du transfert ne soit pas inclus dans la valeur de retour.
      
 
- 
curlopt_failonerror
  : Choisissez une valeur non nulle
       pour que  
PHP
  traite silencieusement les codes HTTP supérieurs
       à 300. Le comportement par défaut est de retourner la
       page normalement, en ignorant ce code.
      
 
- 
curlopt_upload
  : Choisissez une valeur non nulle
       pour que  
PHP
  prépare un chargement.
      
 
- 
curlopt_post
  : Choisissez une valeur non nulle
       pour que  
PHP
  fasse un HTTP POST. Un POST est un encodage normal
       "application/x-www-from-url", utilisé couramment par les formulaires
       HTML.
      
 
- 
curlopt_ftplistonly
  : Choisissez une valeur non nulle
       pour que  
PHP
  ne fasse que lister les noms d'un dossier FTP.
      
 
- 
curlopt_ftpappend
  : Choisissez une valeur non nulle
       pour que  
PHP
  concatène le fichier distant, plutôt que de
       l'écraser.
      
 
- 
curlopt_netrc
  : Choisissez une valeur non nulle
       pour que  
PHP
  analyse votre fichier  
~./netrc
  
       et utilise votre nom de compte et mot de passe sur le site distant 
       que vous souhaitez contacter.
      
 
- 
curlopt_followlocation
  : Choisissez une valeur
       non nulle pour suivre toutes les en-têtes "Location: " que le
       serveur envoie dans les en-têtes HTTP (notez que cette fonction
       est récursive, et que  
PHP
  suivra toutes les en-têtes
       "Location: " qu'il trouvera).
      
 
- 
curlopt_put
  : Choisissez une valeur non nulle
       pour que pour chargement se fasse par HTTP PUT. Le fichier à
       charger doit être fixé avec les options 
        
CURLOPT_INFILE
  et  
CURLOPT_INFILESIZE
 .
      
 
- 
curlopt_mute
  : Choisissez une valeur non nulle
       pour que  
PHP
  soit totalement silencieux concernant toutes les fonctions
       CURL.
      
 
- 
curlopt_timeout
  : Passez un entier "long" comme
       paramètre qui représente le temps maximum d'exécution
       de la fonction CURL.
      
 
- 
curlopt_low_speed_limit
  : Passez un entier long
       qui représente la vitesse minimale en octets par secondes en
       dessous de laquelle, et pendant  
CURLOPT_LOW_SPEED
  
       secondes,  
PHP
  considérera qu'elle est trop lente, et 
       annulera le transfert.
      
 
- 
curlopt_low_speed_time
  : Passez un entier "long"
       qui représente le temps en secondes, qui, si la vitesse de
       transfert reste en dessous de  
CURLOPT_LOW_SPEED_LIMIT
 ,
        
PHP
  considèrera que la connexion est trop lente, et l'annulera.
      
 
- 
curlopt_resume_from
  : Passez un entier "long",
       qui représente l'offset, en octets, à partir duquel vous voulez
       commencer le transfert.
      
 
- 
curlopt_sslversion
  : Passez un entier "long"
       qui contient la version de SSL (2 ou 3) à utiliser.  Par
       défaut,  
PHP
  essaiera de le déterminer par
       lui-même, bien que dans certains cas, il vous faudra
       le faire manuellement.
      
 
- 
curlopt_timecondition
  : Passez un entier "long"
       qui définit comment  
CURLOPT_TIMEVALUE
  
       est utilisé. Vous pouvez choisir entre les valeurs 
        
TIMECOND_IFMODSINCE
  ou  
TIMECOND_ISUNMODSINCE
 .
       C'est une fonctionnalité HTTP.
      
 
- 
curlopt_timevalue
  : Passez un entier "long"
       qui représente le temps en secondes depuis le 1er janvier 1970.
       Cette valeur sera utilisée comme spécifié dans
       l'option  
CURLOPT_TIMEVALUE
 . Par défaut, 
        
TIMECOND_IFMODSINCE
 
       sera utilisé.
      
 
 
value
  doit être une chaîne de
    caractères pour les valeurs suivantes de  
option
 
 
- 
curlopt_url
  : L'URL que  
PHP
  va récupérer.
       Vous pouvez aussi choisir cette valeur lors de l'appel à
        
curl_init
 .
      
 
- 
curlopt_userpwd
  : Passez une chaîne de
       caractères au format [nom]:[mot de passe], pour que  
PHP
 
       l'utilise lors de la connexion.
      
 
- 
curlopt_proxyuserpwd
  : Passez une chaîne
       de caractères au format [nom]:[mot de passe ], pour que  
PHP
 
       l'utilise lors de la connexion à un proxy HTTP.
      
 
- 
curlopt_range
  : Passez une chaîne de
       caractères qui représente la plage de valeur que
       vous désirez. Elle est au format "X-Y", où les
       valeurs de X ou Y peuvent être omises. Le transfert HTTP
       supporte aussi plusieurs intervalles, séparé par
       des virgules : X-Y,N-M.
      
 
- 
curlopt_postfields
  : Passez une chaîne
       de caractères qui contient toutes les données à
       passer lors d'une opération de HTTP POST.
      
 
- 
curlopt_referer
  : Passez une chaîne de
       caractères qui contient l'en-tête de "REFERER",
       utilisé lors d'une requête HTTP.
      
 
- 
curlopt_useragent
  : Passez une chaîne
       de caractères qui contient l'en-tête "user-agent"
       utilisé dans une requête HTTP.
      
 
- 
curlopt_ftpport
  : Passez une chaîne de
       caractères qui désignera l'adresse IP utilisée
       pour l'instruction FTP "PORT". L'instruction POST indique au serveur
       distant de se connecter cette adresse IP. La chaîne peut
       être une adresse IP, un nom d'hôte, un nom d'interface
       réseau (sous UNIX), ou juste '-', pour utiliser les IP par
       défaut du système.
      
 
- 
curlopt_cookie
  : Passez une chaîne de
       caractères qui contiendra le contenu du cookie, à
       transmettre dans l'en-tête HTTP.
      
 
- 
curlopt_sslcert
  : Passez une chaîne de
       caractères qui contiendra le nom de fichier du certificat,
       au format PEM.
      
 
- 
curlopt_sslcertpasswd
  : Passez une chaîne
       de caractères qui contient le mot de passe nécessaire
       pour utiliser le certificat  
CURLOPT_SSLCERT
 .
      
 
- 
curlopt_cookiefile
  : Passez une chaîne de
       caractères qui contiendra le nom du fichier contenant les
       données de cookie. Le fichier de cookie peut être au
       format Netscape, ou simplement des en-têtes HTTP écrites
       dans un fichier.
      
 
- 
curlopt_customrequest
  : Passez une chaîne
       de caractères qui sera utilisé à la place de GET
       ou HEAD lors des requêtes HTTP. Cette commande est pratique pour
       effectuer un DELETE, ou une autre commande HTTP exotique.
        
| Note |  | 
 
         N'utilisez pas cette commande sans vous assurer que le serveur l'accepte.
         
 |   
 
 
    Les options suivantes requièrent un pointeur de fichier, qui est
    obtenu avec la fonction  
fopen
  :
     
 
- 
curlopt_file
  : Le fichier de sortie de votre transfert.
       Par défaut, STDOUT.
      
 
- 
curlopt_infile
  : Le fichier d'entrée de
       votre transfert.
      
 
- 
curlopt_writeheader
  : Le fichier de destination
       de l'en-tête de la sortie du transfert.
      
 
- 
curlopt_stderr
  : Le fichier d'erreurs.
      
 
 
 |