Constantes pré-définies

Ces constantes sont définies par cette extension, et ne sont disponibles que si cette extension a été compilée avec PHP, ou bien chargée au moment de l'exécution.

Les descriptions ainsi que les usages de ces constantes sont décrites dans la documentation des fonctions curl_setopt(), curl_multi_setopt() et curl_getinfo().

CURLFTP_CREATE_DIR (int)
Disponible à partir de PHP 7.0.7 et cURL 7.19.3
CURLFTP_CREATE_DIR_NONE (int)
Disponible à partir de PHP 7.0.7 et cURL 7.19.3
CURLFTP_CREATE_DIR_RETRY (int)
Disponible à partir de PHP 7.0.7 et cURL 7.19.3
CURLFTPSSL_TRY (int)
CURLFTPSSL_ALL (int)
CURLFTPSSL_CONTROL (int)
CURLFTPSSL_NONE (int)
CURLFTPMETHOD_DEFAULT (int)
Disponible à partir de PHP 8.2.0 et cURL 7.15.3.
CURLALTSVC_H1 (int)
Disponible à partir de PHP 8.2.0 et cURL 7.64.1.
CURLALTSVC_H2 (int)
Disponible à partir de PHP 8.2.0 et cURL 7.64.1.
CURLALTSVC_H3 (int)
Disponible à partir de PHP 8.2.0 et cURL 7.64.1.
CURLALTSVC_READONLYFILE (int)
Disponible à partir de PHP 8.2.0 et cURL 7.64.1.
CURL_SSLVERSION_DEFAULT (int)
CURL_SSLVERSION_TLSv1 (int)
CURL_SSLVERSION_SSLv2 (int)
CURL_SSLVERSION_SSLv3 (int)
CURL_SSLVERSION_TLSv1_0 (int)
CURL_SSLVERSION_TLSv1_1 (int)
CURL_SSLVERSION_TLSv1_2 (int)
CURL_SSLVERSION_TLSv1_3 (int)
Disponible à partir de PHP 7.3.0 et cURL 7.52.0
CURLHSTS_ENABLE (int)
Disponible à partir de PHP 8.2.0 et cURL 7.74.0
CURLHSTS_READONLYFILE (int)
Disponible à partir de PHP 8.2.0 et cURL 7.74.0
CURLAUTH_BASIC (int)
CURLAUTH_DIGEST (int)
CURLAUTH_GSSNEGOTIATE (int)
CURLAUTH_NEGOTIATE (int)
Disponible à partir de PHP 7.0.7 et cURL 7.38.0.
CURLAUTH_NTLM (int)
CURLAUTH_NTLM_WB (int)
Disponible à partir de PHP 7.0.7 et cURL 7.22.0
CURLAUTH_ANY (int)
CURLAUTH_ANYSAFE (int)
CURLAUTH_AWS_SIGV4 (int)
Disponible à partir de PHP 8.2.0 et cURL 7.75.0.
CURLPX_BAD_ADDRESS_TYPE (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_BAD_VERSION (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_CLOSED (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_GSSAPI (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_GSSAPI_PERMSG (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_GSSAPI_PROTECTION (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_IDENTD_DIFFER (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_IDENTD (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_LONG_HOSTNAME (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_LONG_PASSWD (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_LONG_USER (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_NO_AUTH (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_OK (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_RECV_ADDRESS (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_RECV_AUTH (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_RECV_CONNECT (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_RECV_REQACK (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_REPLY_ADDRESS_TYPE_NOT_SUPPORTED (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_REPLY_COMMAND_NOT_SUPPORTED (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_REPLY_CONNECTION_REFUSED (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_REPLY_GENERAL_SERVER_FAILURE (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_REPLY_HOST_UNREACHABLE (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_REPLY_NETWORK_UNREACHABLE (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_REPLY_NOT_ALLOWED (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_REPLY_TTL_EXPIRED (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_REPLY_UNASSIGNED (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_REQUEST_FAILED (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_RESOLVE_HOST (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_SEND_AUTH (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_SEND_CONNECT (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_SEND_REQUEST (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_UNKNOWN_FAIL (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_UNKNOWN_MODE (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLPX_USER_REJECTED (int)
Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURL_PUSH_OK (int)
Disponible à partir de PHP 7.1.0 et cURL 7.44.0
CURL_PUSH_DENY (int)
Disponible depuis PHP 7.1.0 et cURL 7.44.0
CURL_REDIR_POST_301 (int)
Disponible depuis PHP 7.0.7 et cURL 7.18.2
CURL_REDIR_POST_302 (int)
Disponible depuis PHP 7.0.7 et cURL 7.18.2
CURL_REDIR_POST_303 (int)
Disponible depuis PHP 7.0.7 et cURL 7.25.1
CURL_REDIR_POST_ALL (int)
Disponible depuis PHP 7.0.7 et cURL 7.18.2
CURL_TIMECOND_NONE (int)
CURL_TIMECOND_IFMODSINCE (int)
CURL_TIMECOND_IFUNMODSINCE (int)
CURL_TIMECOND_LASTMOD (int)
CURL_VERSION_ALTSVC (int)
Disponible depuis PHP 7.3.6 et cURL 7.64.1
CURL_VERSION_ASYNCHDNS (int)
Résolutions DNS asynchrones. Disponible depuis PHP 7.3.0 et cURL 7.10.7
CURL_VERSION_BROTLI (int)
Disponible depuis PHP 7.3.0 et cURL 7.57.0
CURL_VERSION_CONV (int)
Conversions de caractères supportées. Disponible depuis PHP 7.3.0 et cURL 7.15.4
CURL_VERSION_CURLDEBUG (int)
Suivi de la mémoire de débogage supporté. Disponible depuis PHP 7.3.6 et cURL 7.19.6
CURL_VERSION_DEBUG (int)
Construit avec des capacités de débogage. Disponible depuis PHP 7.3.0 et cURL 7.10.6
CURL_VERSION_GSASL (int)
Disponible depuis PHP 8.2.0 et cURL 7.76.0
CURL_VERSION_GSSAPI (int)
Construit contre une bibliothèque GSS-API. Disponible depuis PHP 7.3.0 et cURL 7.38.0
CURL_VERSION_GSSNEGOTIATE (int)
L'authentification Negotiate est supportée. Disponible depuis PHP 7.3.0 et cURL 7.10.6 (déprécié depuis 7.38.0)
CURL_VERSION_HSTS (int)
Disponible depuis PHP 8.2.0 et cURL 7.74.0
CURL_VERSION_IDN (int)
Les noms de domaine internationalisés sont supportés. Disponible depuis PHP 7.3.0 et cURL 7.12.0
CURL_VERSION_MULTI_SSL (int)
Disponible depuis PHP 7.3.0 et cURL 7.56.0
CURL_VERSION_NTLM (int)
L'authentification NTLM est supportée. Disponible depuis PHP 7.3.0 et cURL 7.10.6
CURL_VERSION_NTLM_WB (int)
La délégation NTLM au helper winbind est supportée. Disponible depuis PHP 7.3.0 et cURL 7.22.0
CURL_VERSION_IPV6 (int)
Supporte IPv6.
CURL_VERSION_KERBEROS4 (int)
L'authentification Kerberos V4 est supportée.
CURL_VERSION_KERBEROS5 (int)
L'authentification Kerberos V5 est supportée. Disponible depuis PHP 7.0.7 et cURL 7.40.0
CURL_VERSION_HTTP2 (int)
Support HTTP2 intégré. Disponible depuis cURL 7.33.0
CURL_VERSION_HTTP3 (int)
Disponible depuis PHP 8.2.0 et cURL 7.66.0
CURL_VERSION_LARGEFILE (int)
Supporte les fichiers de plus de 2 Go. Disponible depuis cURL 7.33.0
CURL_VERSION_PSL (int)
Liste des suffixes publics de Mozilla, utilisée pour la vérification des domaines de cookies. Disponible depuis PHP 7.3.6 et cURL 7.47.0
CURL_VERSION_SPNEGO (int)
L'authentification SPNEGO est supportée. Disponible depuis PHP 7.3.0 et cURL 7.10.8
CURL_VERSION_SSPI (int)
Construit contre Windows SSPI. Disponible depuis PHP 7.3.0 et cURL 7.13.2
CURL_VERSION_SSL (int)
Les options SSL sont présentes.
CURL_VERSION_TLSAUTH_SRP (int)
L'authentification TLS-SRP est supportée. Disponible depuis PHP 7.3.0 et cURL 7.21.4
CURL_VERSION_UNICODE (int)
Disponible depuis PHP 8.2.0 et cURL 7.72.0
CURL_VERSION_UNIX_SOCKETS (int)
Support des sockets de domaine Unix. Disponible depuis PHP 7.0.7 et cURL 7.40.0
CURL_VERSION_ZSTD (int)
Disponible depuis PHP 8.2.0 et cURL 7.72.0
CURL_VERSION_LIBZ (int)
Les fonctionnalités de libz sont présentes.
CURLVERSION_NOW (int)
CURLFTPAUTH_DEFAULT (int)
CURLFTPAUTH_SSL (int)
CURLFTPAUTH_TLS (int)
CURLPROXY_HTTP (int)
Disponible depuis cURL 7.10.
CURLPROXY_HTTP_1_0 (int)
Disponible depuis PHP 7.0.7 et cURL 7.19.3
CURLPROXY_SOCKS4 (int)
Disponible depuis cURL 7.10.
CURLPROXY_SOCKS5 (int)
Disponible depuis cURL 7.10.
CURL_NETRC_OPTIONAL (int)
CURL_NETRC_IGNORED (int)
CURL_NETRC_REQUIRED (int)
CURL_HTTP_VERSION_NONE (int)
CURL_HTTP_VERSION_1_0 (int)
CURL_HTTP_VERSION_1_1 (int)
CURL_HTTP_VERSION_2 (int)
Disponible depuis PHP 7.0.7 et cURL 7.43.0
CURL_HTTP_VERSION_2_0 (int)
Disponible depuis cURL 7.33.0
CURL_HTTP_VERSION_2TLS (int)
Disponible depuis PHP 7.0.7 et cURL 7.47.0
CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE (int)
Disponible depuis PHP 7.0.7 et cURL 7.49.0
CURLMSG_DONE (int)
CURLSSLOPT_ALLOW_BEAST (int)
Disponible depuis cURL 7.25.0
CURLSSLOPT_NO_REVOKE (int)
Disponible depuis PHP 7.0.7 et cURL 7.44.0
CURLSSLOPT_AUTO_CLIENT_CERT (int)
Disponible depuis PHP 8.2.0 et cURL 7.77.0
CURLSSLOPT_NATIVE_CA (int)
Disponible depuis PHP 8.2.0 et cURL 7.71.0
CURLSSLOPT_NO_PARTIALCHAIN (int)
Disponible depuis PHP 8.2.0 et cURL 7.68.0
CURLSSLOPT_REVOKE_BEST_EFFORT (int)
Disponible depuis PHP 8.2.0 et cURL 7.70.0
CURLSSH_AUTH_AGENT (int)
Disponible depuis PHP 7.0.7 et cURL 7.28.0
CURLSSH_AUTH_ANY (int)
CURLSSH_AUTH_DEFAULT (int)
CURLSSH_AUTH_HOST (int)
CURLSSH_AUTH_KEYBOARD (int)
CURLSSH_AUTH_NONE (int)
CURLSSH_AUTH_PASSWORD (int)
CURLSSH_AUTH_PUBLICKEY (int)
CURLPIPE_NOTHING (int)
Disponible depuis cURL 7.43.0.
CURLPIPE_HTTP1 (int)
Disponible depuis cURL 7.43.0.
CURLPIPE_MULTIPLEX (int)
Disponible depuis cURL 7.43.0.
CURLPROXY_SOCKS4A (int)
Disponible depuis cURL 7.18.0.
CURLPROXY_SOCKS5_HOSTNAME (int)
Disponible depuis cURL 7.18.0.
CURLHEADER_SEPARATE (int)
Disponible depuis PHP 7.0.7 et cURL 7.37.0.
CURLHEADER_UNIFIED (int)
Disponible depuis PHP 7.0.7 et cURL 7.37.0.
CURLAUTH_GSSAPI (int)
Disponible depuis PHP 7.3.0 et cURL 7.54.1
CURL_MAX_READ_SIZE (int)
Disponible depuis PHP 7.3.0 et cURL 7.53.0
CURLPROXY_HTTPS (int)
Disponible depuis PHP 7.3.0 et cURL 7.52.0
CURL_SSLVERSION_MAX_DEFAULT (int)
Disponible depuis PHP 7.3.0 et cURL 7.54.0
CURL_SSLVERSION_MAX_NONE (int)
Disponible depuis PHP 7.3.0 et cURL 7.54.0
CURL_SSLVERSION_MAX_TLSv1_0 (int)
Disponible depuis PHP 7.3.0 et cURL 7.54.0
CURL_SSLVERSION_MAX_TLSv1_1 (int)
Disponible depuis PHP 7.3.0 et cURL 7.54.0
CURL_SSLVERSION_MAX_TLSv1_2 (int)
Disponible depuis PHP 7.3.0 et cURL 7.54.0
CURL_SSLVERSION_MAX_TLSv1_3 (int)
Disponible depuis PHP 7.3.0 et cURL 7.54.0
CURL_VERSION_HTTPS_PROXY (int)
Disponible depuis PHP 7.3.0 et cURL 7.52.0
CURLAUTH_BEARER (int)
Disponible depuis PHP 7.3.0 et cURL 7.61.0.
CURLSSH_AUTH_GSSAPI (int)
Disponible depuis PHP 7.3.0 et cURL 7.58.0
CURLMIMEOPT_FORMESCAPE (int)
Disponible depuis PHP 8.3.0 et cURL 7.81.0
CURLWS_RAW_MODE (int)
Disponible depuis PHP 8.3.0 et cURL 7.86.0
CURLKHMATCH_OK (int)
Disponible depuis PHP 8.3.0 et cURL 7.19.6
CURLKHMATCH_MISMATCH (int)
Disponible depuis PHP 8.3.0 et cURL 7.19.6
CURLKHMATCH_MISSING (int)
Disponible depuis PHP 8.3.0 et cURL 7.19.6
CURLKHMATCH_LAST (int)
Disponible depuis PHP 8.3.0 et cURL 7.19.6
curl-setopt()
Constantes Description
CURLOPT_ABSTRACT_UNIX_SOCKET (int)

Active l'utilisation d'un socket Unix abstrait à la place d'établir une connexion TCP à un hôte et définit le chemin donné en string. Cette option partage les mêmes sémantiques que CURLOPT_UNIX_SOCKET_PATH. Ces deux options partagent le même stockage et donc une seule d'entre elles peut être définie par un gestionnaire. Disponible depuis PHP 7.3.0 et cURL 7.53.0

CURLOPT_ALTSVC (int)

Passer le nom de fichier pour que cURL utilise comme cache Alt-Svc pour lire le contenu du cache existant et éventuellement le réécrire après un transfert, à moins que CURLALTSVC_READONLYFILE ne soit défini via CURLOPT_ALTSVC_CTRL. Disponible depuis PHP 8.2.0 et cURL 7.64.1.

CURLOPT_ALTSVC_CTRL (int)

Peuple le masque de bits avec le bon ensemble de fonctionnalités pour indiquer à cURL comment gérer Alt-Svc pour les transferts utilisant ce gestionnaire. cURL n'accepte que les en-têtes Alt-Svc sur HTTPS. Il ne complétera également une demande à une origine alternative que si cette origine est correctement hébergée sur HTTPS. Définir un bit activera le moteur alt-svc. Les options sont : Populate the bitmask with the correct set of features to instruct cURL how to handle Alt-Svc for the CURLALTSVC_H1, CURLALTSVC_H2, CURLALTSVC_H3, et CURLALTSVC_READONLYFILE. Disponible depuis PHP 8.2.0 et cURL 7.64.1.

CURLOPT_AUTOREFERER (int)

true pour définir automatiquement le champ Referer: dans les requêtes où il suit une redirection Location:.

CURLOPT_AWS_SIGV4 (int)

Apporte une authentification de signature AWS V4 sur l'en-tête HTTP(S). Cette option remplace tout autre type d'authentification qui a été défini dans CURLOPT_HTTPAUTH. Cette méthode ne peut pas être combinée avec d'autres types d'authentification. Disponible depuis PHP 8.2.0 et cURL 7.75.0

CURLOPT_BINARYTRANSFER (int)

CURLOPT_BUFFERSIZE (int)

Une taille de tampon à utiliser pour chaque lecture. Il n'y a aucune garantie que cette demande sera satisfaite, cependant. Disponible depuis cURL 7.10.

CURLOPT_CAINFO (int)

Le nom d'un fichier contenant un ou plusieurs certificats pour vérifier le pair avec. Cela n'a de sens que lorsqu'il est utilisé en combinaison avec CURLOPT_SSL_VERIFYPEER. Peut nécessiter un chemin absolu.

CURLOPT_CAINFO_BLOB (int)

Le nom d'un fichier PEM contenant un ou plusieurs certificats pour vérifier le pair avec. Cette option remplace CURLOPT_CAINFO.

CURLOPT_CAPATH (int)

Un répertoire qui contient plusieurs certificats CA. Utilisez cette option en combinaison avec CURLOPT_SSL_VERIFYPEER.

CURLOPT_CA_CACHE_TIMEOUT (int)

Disponible depuis PHP 8.3.0 et cURL 7.87.0

CURLOPT_CERTINFO (int)

true pour sortir des informations sur le certificat SSL sur STDERR sur les transferts sécurisés. Ajouté dans cURL 7.19.1. Nécessite CURLOPT_VERBOSE pour avoir un effet.

CURLOPT_CONNECTTIMEOUT (int)

Le nombre de secondes à attendre lors de la tentative de connexion. Utilisez 0 pour attendre indéfiniment.

CURLOPT_CONNECTTIMEOUT_MS (int)

Le nombre de millisecondes à attendre lors de la tentative de connexion. Utilisez 0 pour attendre indéfiniment. Si libcurl est compilé pour utiliser le résolveur de noms système standard, cette partie de la connexion utilisera toujours une résolution à la seconde complète pour les délais d'attente avec un délai d'attente minimum autorisé d'une seconde. Disponible depuis cURL 7.16.2.

CURLOPT_CONNECT_ONLY (int)

true pour indiquer à la librairie de ne pas effectuer d'authentification de proxy et de configuration de connexion requise, mais pas de transfert de données. Cette option est implémentée pour HTTP, SMTP et POP3. Disponible depuis cURL 7.15.2.

CURLOPT_CONNECT_TO (int)

Connecte à un hôte et un port spécifiques au lieu de l'hôte et du port de l'URL. Accepte un tableau de chaînes avec le format HOST:PORT:CONNECT-TO-HOST:CONNECT-TO-PORT. Disponible depuis PHP 7.0.7 et cURL 7.49.0

Le contenu de l'en-tête "Cookie: " à utiliser dans la requête HTTP. Il est à noter que plusieurs cookies sont séparés par un point-virgule suivi d'un espace (par exemple, fruit=apple; colour=red)

CURLOPT_COOKIEFILE (int)

Le nom du fichier contenant les données des cookies. Le fichier de cookies peut être au format Netscape, ou simplement des en-têtes HTTP classiques vidés dans un fichier. Si le nom est une chaîne vide, aucun cookie n'est chargé, mais la gestion des cookies est toujours activée.

CURLOPT_COOKIEJAR (int)

Le nom du fichier pour sauvegarder tous les cookies internes lorsque le gestionnaire destructeur est appelé.

Avertissement

Depuis PHP 8.0.0, curl_close() est une opération nulle et ne détruit pas le gestionnaire. Si les cookies doivent être écrits avant que le gestionnaire ne soit automatiquement détruite, appelez unset() sur le gestionnaire.

CURLOPT_COOKIELIST (int)

Une chaîne de caractères de cookies (c'est-à-dire une seule ligne dans le format Netscape/Mozilla, ou un en-tête Set-Cookie HTTP régulier) ajoute ce cookie unique au stockage interne des cookies. "ALL" efface tous les cookies stockés en mémoire. "SESS" efface tous les cookies de session stockés en mémoire. "FLUSH" écrit tous les cookies connus dans le fichier spécifié par CURLOPT_COOKIEJAR. "RELOAD" charge tous les cookies des fichiers spécifiés par CURLOPT_COOKIEFILE. Disponible depuis cURL 7.14.1

CURLOPT_COOKIESESSION (int)

true pour marquer ceci comme une nouvelle "session" de cookie. Cela forcera libcurl à ignorer tous les cookies qu'il est sur le point de charger qui sont des "cookies de session" de la session précédente. Par défaut, libcurl stocke et charge toujours tous les cookies, indépendamment du fait qu'ils soient des cookies de session ou non. Les cookies de session sont des cookies sans date d'expiration et ils sont censés être vivants et existants pour cette "session" uniquement.

CURLOPT_CRLF (int)

true pour convertir les fins de ligne Unix en fins de ligne CRLF sur les transferts.

CURLOPT_CUSTOMREQUEST (int)

Une méthode de requête personnalisée à utiliser à la place de "GET" ou "HEAD" lors de la réalisation d'une requête HTTP. Ceci est utile pour effectuer des requêtes HTTP plus obscures comme "DELETE" ou autres. Les valeurs valides sont des choses comme "GET", "POST", "CONNECT" et ainsi de suite; c'est-à-dire ne pas entrer une ligne de requête HTTP entière ici. Par exemple, entrer "GET /index.html HTTP/1.0\r\n\r\n" serait incorrect.

Note:

Ne pas faire cela sans vous assurer que le serveur supporte la méthode de requête personnalisée en premier.

CURLOPT_DEFAULT_PROTOCOL (int)

Le protocole par défaut à utiliser si l'URL manque d'un nom de schéma. Disponible depuis PHP 7.0.7 et cURL 7.45.0

CURLOPT_DISALLOW_USERNAME_IN_URL (int)

true pour ne pas autoriser les URL qui incluent un nom d'utilisateur. Les noms d'utilisateur sont autorisés par défaut (0). Disponible depuis PHP 7.3.0 et cURL 7.61.0

CURLOPT_DNS_CACHE_TIMEOUT (int)

Le nombre de secondes à conserver les entrées DNS en mémoire. Cette option est définie par défaut à 120 (2 minutes).

CURLOPT_DNS_INTERFACE (int)

Définit le nom de l'interface réseau que le résolveur DNS doit lier. Cela doit être un nom d'interface (pas une adresse). Disponible depuis PHP 7.0.7 et cURL 7.33.0

CURLOPT_DNS_LOCAL_IP4 (int)

Définit l'adresse IPv4 locale à laquelle le résolveur doit se lier. L'argument doit contenir une seule adresse IPv4 numérique sous forme de chaîne. Disponible depuis PHP 7.0.7 et cURL 7.33.0

CURLOPT_DNS_LOCAL_IP6 (int)

Définit l'adresse IPv6 locale à laquelle le résolveur doit se lier. L'argument doit contenir une seule adresse IPv6 numérique sous forme de chaîne.

CURLOPT_DNS_SHUFFLE_ADDRESSES (int)

true pour mélanger l'ordre de toutes les adresses retournées afin qu'elles soient utilisées dans un ordre aléatoire, lorsqu'un nom est résolu et que plus d'une adresse IP est retournée. Cela peut entraîner l'utilisation d'IPv4 avant IPv6 ou vice versa. Disponible depuis PHP 7.3.0 et cURL 7.60.0

CURLOPT_DNS_USE_GLOBAL_CACHE (int)

true pour utiliser un cache DNS global. Cette option n'est pas thread-safe. Elle est activée par défaut si PHP est compilé pour une utilisation non threadée (CLI, FCGI, Apache2-Prefork, etc.).

CURLOPT_DOH_SSL_VERIFYHOST (int)

Vérifie le champ de nom du certificat SSL du serveur DNS-over-HTTPS par rapport au nom d'hôte. Disponible depuis PHP 8.2.0 et cURL 7.76.0.

CURLOPT_DOH_SSL_VERIFYPEER (int)

Vérifie l'authenticité du certificat SSL du serveur DNS-over-HTTPS. Disponible depuis PHP 8.2.0 et cURL 7.76.0.

CURLOPT_DOH_SSL_VERIFYSTATUS (int)

Dit à cURL de vérifier le statut du certificat du serveur DNS-over-HTTPS en utilisant l'extension TLS "Certificate Status Request" (OCSP stapling). Disponible depuis PHP 8.2.0 et cURL 7.76.0.

CURLOPT_DOH_URL (int)

Apporte l'URL DNS-over-HTTPS. Disponible depuis PHP 8.1.0 et cURL 7.62.0.

CURLOPT_EGDSOCKET (int)

Comme CURLOPT_RANDOM_FILE excepté que vous passez une chaîne qui contient un nom de fichier vers le socket Entropy Gathering Daemon.

CURLOPT_ENCODING (int)

Le contenu des en-têtes "Accept-Encoding: ". Cela permet de décoder la réponse. Les encodages supportés sont "identity", "deflate", et "gzip". Si une chaîne vide, "", est définie, un en-tête contenant tous les types d'encodage supportés est envoyé. Disponible depuis cURL 7.10.

CURLOPT_EXPECT_100_TIMEOUT_MS (int)

Le délais d'attente pour les réponses Expect: 100-continue en millisecondes. Par défaut, 1000 millisecondes. Disponible depuis PHP 7.0.7 et cURL 7.36.0

CURLOPT_FAILONERROR (int)

true pour échouer verbalement si le code HTTP retourné est supérieur ou égal à 400. Le comportement par défaut est de retourner la page normalement, en ignorant le code.

CURLOPT_FILE (int)

Le fichier dans lequel le transfert doit être écrit. La valeur par défaut est STDOUT (la fenêtre du navigateur).

CURLOPT_FILETIME (int)

true pour tenter de récupérer la date de modification du document distant. Cette valeur peut être récupérée en utilisant l'option CURLINFO_FILETIME avec curl_getinfo().

CURLOPT_FOLLOWLOCATION (int)

true pour suivre tous les en-têtes "Location: " envoyés par le serveur dans la réponse HTTP. Voir aussi CURLOPT_MAXREDIRS. Cette constante n'est pas disponible lorsque open_basedir est activé.

CURLOPT_FORBID_REUSE (int)

true pour forcer à fermer explicitement la connexion lorsque le processus est terminé, elle ne sera donc pas mise en cache pour réutilisation.

CURLOPT_FRESH_CONNECT (int)

true pour forcer l'utilisation d'une nouvelle connexion au lieu d'une connexion mise en cache.

CURLOPT_FTPAPPEND (int)

true pour ajouter au fichier distant au lieu de l'écraser.

CURLOPT_FTPASCII (int)

Un alias de CURLOPT_TRANSFERTEXT. Utilisez plutôt cela.

CURLOPT_FTPLISTONLY (int)

true pour seulement lister les noms d'un répertoire FTP.

CURLOPT_FTPPORT (int)

La valeur qui sera utilisée pour obtenir l'adresse IP à utiliser pour l'instruction FTP "PORT". L'instruction "PORT" indique au serveur distant de se connecter à notre adresse IP spécifiée. La chaîne peut être une adresse IP simple, un nom d'hôte, un nom d'interface réseau (sous Unix), ou juste un '-' pour utiliser l'adresse IP par défaut du système.

CURLOPT_FTPSSLAUTH (int)

L'authentification FTP (quand elle est activée): CURLFTPAUTH_SSL (essayer SSL en premier), CURLFTPAUTH_TLS (essayer TLS en premier), ou CURLFTPAUTH_DEFAULT (laisser cURL décider). Disponible depuis cURL 7.12.2.

CURLOPT_FTP_CREATE_MISSING_DIRS (int)

true pour créer les répertoires manquants lorsqu'une opération FTP rencontre un chemin qui n'existe pas actuellement.

CURLOPT_FTP_FILEMETHOD (int)

Indique à curl quelle méthode utiliser pour atteindre un fichier sur un serveur FTP(S). Les valeurs possibles sont CURLFTPMETHOD_DEFAULT, CURLFTPMETHOD_MULTICWD, CURLFTPMETHOD_NOCWD, et CURLFTPMETHOD_SINGLECWD. Disponible depuis cURL 7.15.1.

CURLOPT_FTP_SSL (int)

CURLOPT_FTP_USE_EPRT (int)

true pour utiliser EPRT (et LPRT) lors des téléchargements FTP actifs. Utilisez false pour désactiver EPRT et LPRT et utiliser PORT uniquement.

CURLOPT_FTP_USE_EPSV (int)

true pour essayer d'envoyer un commande EPSV pour les transferts FTP avant de revenir à PASV. Mettez à false pour désactiver EPSV.

CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS (int)

Une avance pour IPv6 pour l'algorithme Happy Eyeballs. Happy Eyeballs tente de se connecter à la fois aux adresses IPv4 et IPv6 pour les hôtes double-stack, en préférant IPv6 en premier pour les millisecondes de délai d'attente. Par défaut à CURL_HET_DEFAULT, qui est actuellement de 200 millisecondes. Disponible depuis PHP 7.3.0 et cURL 7.59.0

CURLOPT_HAPROXYPROTOCOL (int)

true pour envoyer un en-tête de protocole HAProxy PROXY v1 au début de la connexion. L'action par défaut est de ne pas envoyer cet en-tête. Disponible depuis PHP 7.3.0 et cURL 7.60.0

CURLOPT_HEADER (int)

true pour inclure l'en-tête dans la sortie.

CURLOPT_HEADERFUNCTION (int)

Une fonction de rappel acceptant deux paramètres. Le premier est la ressource cURL, le second est une chaîne avec les données d'en-tête à écrire. Les données d'en-tête doivent être écrites par ce rappel. Retourne le nombre de bytes écrits.

CURLOPT_HEADEROPT (int)

Les valeurs possibles sont CURLHEADER_UNIFIED ou CURLHEADER_SEPARATE. Défaut à CURLHEADER_SEPARATE depuis cURL 7.42.1, et CURLHEADER_UNIFIED avant. Disponible depuis PHP 7.0.7 et cURL 7.37.0

CURLOPT_HSTS (int)

Le nom du fichier de cache HSTS (HTTP Strict Transport Security). Disponible depuis PHP 8.2.0 et cURL 7.74.0

CURLOPT_HSTS_CTRL (int)

Contrôle le comportement HSTS (HTTP Strict Transport Security). Rempli le masque de bits avec le bon ensemble de fonctionnalités pour indiquer à cURL comment gérer HSTS pour les transferts utilisant ce gestionnaire. CURLHSTS_ENABLE active le cache HSTS en mémoire. Si le fichier de cache HSTS est défini, définissez CURLHSTS_READONLYFILE pour rendre le fichier en lecture seule. Disponible depuis PHP 8.2.0 et cURL 7.74.0

CURLOPT_HTTP09_ALLOWED (int)

Si on autorise les réponses HTTP/0.9. Par défaut à false depuis cURL 7.66.0; avant, c'était true. Disponible depuis PHP 7.3.15 et 7.4.3, respectivement, et cURL 7.64.0

CURLOPT_HTTP200ALIASES (int)

Un tableau de réponses HTTP 200 qui seront traitées comme valides et non comme des erreurs. Disponible depuis cURL 7.10.3.

CURLOPT_HTTPAUTH (int)

La méthode d'authentification HTTP à utiliser. Les options sont : CURLAUTH_BASIC, CURLAUTH_DIGEST, CURLAUTH_GSSNEGOTIATE, CURLAUTH_NTLM, CURLAUTH_AWS_SIGV4, CURLAUTH_ANY, et CURLAUTH_ANYSAFE. L'opérateur binaire | (ou) peut être utilisé pour combiner plus d'une méthode. Si cela est fait, cURL interrogera le serveur pour voir quelles méthodes il supporte et choisira la meilleure. CURLAUTH_ANY définit tous les bits. cURL sélectionnera automatiquement celle qu'il trouve la plus sécurisée.

CURLOPT_HTTPGET (int)

true pour réinitialiser la méthode de requête HTTP en GET. Puisque GET est la valeur par défaut, cela n'est nécessaire que si la méthode de requête a été changée.

CURLOPT_HTTPHEADER (int)

Un tableau de champs d'en-tête HTTP à définir. Ce tableau doit être au format array('Content-type: text/plain', 'Content-length: 100')

CURLOPT_HTTPPROXYTUNNEL (int)

true pour tunneliser à travers un proxy HTTP donné.

CURLOPT_HTTP_CONTENT_DECODING (int)

false pour désactiver le décodage automatique du contenu de réponse. Disponible depuis cURL 7.16.2.

CURLOPT_HTTP_VERSION (int)

CURL_HTTP_VERSION_NONE (défaut, laisse CURL décider quelle version utiliser), CURL_HTTP_VERSION_1_0 (force HTTP/1.0), CURL_HTTP_VERSION_1_1 (force HTTP/1.1), CURL_HTTP_VERSION_2_0 (essaye HTTP 2), CURL_HTTP_VERSION_2 (alias de CURL_HTTP_VERSION_2_0), CURL_HTTP_VERSION_2TLS (essaye HTTP 2 sur TLS (HTTPS) seulement) ou CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE (envoie des requêtes HTTP/2 sans TLS sans mise à niveau HTTP/1.1).

CURLOPT_INFILE (int)

Le fichier à partir duquel la transfert doit être lu lors de l'envoi.

CURLOPT_INFILESIZE (int)

La taille attendue, en octets, du fichier lors de l'envoi d'un fichier à un site distant. Il est à noter que l'utilisation de cette option n'empêchera pas cURL d'envoyer plus de données, car ce qui est envoyé dépend exactement de CURLOPT_READFUNCTION.

CURLOPT_INTERFACE (int)

Le nom de l'interface réseau sortante à utiliser. Cela peut être un nom d'interface, une adresse IP ou un nom d'hôte.

CURLOPT_IPRESOLVE (int)

Autorise une application à sélectionner le type d'adresses IP à utiliser lors de la résolution des noms d'hôtes. Ceci est seulement intéressant lors de l'utilisation de noms d'hôtes qui résolvent des adresses en utilisant plus d'une version d'IP, les valeurs possibles sont CURL_IPRESOLVE_WHATEVER, CURL_IPRESOLVE_V4, CURL_IPRESOLVE_V6, par défaut CURL_IPRESOLVE_WHATEVER. Disponible depuis cURL 7.10.8.

CURLOPT_ISSUERCERT_BLOB (int)

Emetteur du certificat SSL à partir du blob de mémoire. Disponible depuis PHP 8.1.0 et cURL 7.71.0.

CURLOPT_KEEP_SENDING_ON_ERROR (int)

true pour continuer à envoyer le corps de la requête si le code HTTP retourné est égal ou supérieur à 300. L'action par défaut serait d'arrêter l'envoi et de fermer le flux ou la connexion. Convient pour l'authentification NTLM manuelle. La plupart des applications n'ont pas besoin de cette option. Disponible depuis PHP 7.3.0 et cURL 7.51.0

CURLOPT_KEYPASSWD (int)

Le mot de passe requis pour utiliser la clé privée spécifiée par CURLOPT_SSLKEY ou CURLOPT_SSH_PRIVATE_KEYFILE. Disponible depuis cURL 7.16.1.

CURLOPT_KRB4LEVEL (int)

La sécurité KRB4 (Kerberos 4). Toute valeur suivante (dans l'ordre du moins au plus puissant) est valide : "clear", "safe", "confidential", "private".. Si la chaîne ne correspond pas à l'une de ces valeurs, "private" est utilisé. Définir cette option à null désactivera la sécurité KRB4. Actuellement, la sécurité KRB4 ne fonctionne qu'avec les transactions FTP.

CURLOPT_LOGIN_OPTIONS (int)

Peut être utilisé pour définir des options de connexion spécifiques au protocole, telles que le mécanisme d'authentification préféré via "AUTH=NTLM" ou "AUTH=*", et doit être utilisé en conjonction avec l'option CURLOPT_USERNAME. Disponible depuis PHP 7.0.7 et cURL 7.34.0

CURLOPT_LOW_SPEED_LIMIT (int)

La vitesse de transfert, en octets par seconde, que le transfert doit être inférieur pendant le compte de CURLOPT_LOW_SPEED_TIME secondes avant que PHP ne considère le transfert trop lent et l'interrompe.

CURLOPT_LOW_SPEED_TIME (int)

Le nombre de secondes que la vitesse de transfert doit être inférieure à CURLOPT_LOW_SPEED_LIMIT avant que PHP ne considère le transfert trop lent et l'interrompe.

CURLOPT_MAIL_RCPT_ALLLOWFAILS (int)

Disponible depuis PHP 8.2.0 et cURL 7.69.0

CURLOPT_MAXAGE_CONN (int)

Le temps maximum d'inactivité autorisé pour une connexion existante pour être considérée pour réutilisation. Par défaut, l'âge maximum est défini à 118 secondes. Disponible depuis PHP 8.2.0 et cURL 7.65.0

CURLOPT_MAXCONNECTS (int)

Le maximum de connexions persistantes autorisées. Lorsque la limite est atteinte, la plus ancienne dans le cache est fermée pour empêcher l'augmentation du nombre de connexions ouvertes.

CURLOPT_MAXFILESIZE_LARGE (int)

La taille maximale en octets autorisée pour le téléchargement. Si le fichier demandé est trouvé plus grand que cette valeur, le transfert ne démarrera pas et CURLE_FILESIZE_EXCEEDED sera retourné. La taille du fichier n'est pas toujours connue avant le téléchargement, et pour de tels fichiers cette option n'a aucun effet même si le transfert de fichier finit par être plus grand que cette limite donnée. Disponible depuis PHP 8.2.0 et cURL 7.11.0

CURLOPT_MAXLIFETIME_CONN (int)

Le temps maximum en secondes, depuis la création de la connexion, autorisé pour une connexion existante pour être considérée pour réutilisation. Si une connexion est trouvée dans le cache qui est plus ancienne que cette valeur, elle sera plutôt fermée une fois que tous les transferts en cours sont terminés. Par défaut à 0 secondes, ce qui signifie que l'option est désactivée et que toutes les connexions sont éligibles pour réutilisation. Disponible depuis PHP 8.2.0 et cURL 7.80.0

CURLOPT_MAXREDIRS (int)

La quantité maximale de redirections HTTP à suivre. Utilisez cette option aux côtés de CURLOPT_FOLLOWLOCATION. La valeur par défaut de 20 est définie pour éviter les redirections infinies. Définir à -1 permet les redirections infinies, et 0 refuse toutes les redirections.

CURLOPT_MAX_RECV_SPEED_LARGE (int)

Si un téléchargement dépasse cette vitesse (comptée en octets par seconde) en moyenne cumulative pendant le transfert, le transfert sera mis en pause pour maintenir la vitesse moyenne inférieure ou égale à la valeur du paramètre. La valeur par défaut est une vitesse illimitée. Disponible depuis cURL 7.15.5

CURLOPT_MAX_SEND_SPEED_LARGE (int)

Si un téléversement dépasse cette vitesse (comptée en octets par seconde) en moyenne cumulative pendant le transfert, le transfert sera mis en pause pour maintenir la vitesse moyenne inférieure ou égale à la valeur du paramètre. La valeur par défaut est une vitesse illimitée. Disponible depuis cURL 7.15.5

CURLOPT_MIME_OPTIONS (int)

Disponible depuis PHP 8.3.0 et cURL 7.81.0

CURLOPT_MUTE (int)

true pour être complètement silencieux avec les fonctions cURL. Enlèvé depuis cURL 7.15.5. Utilisez plutôt CURLOPT_RETURNTRANSFER.

CURLOPT_NETRC (int)

true pour scanner le fichier ~/.netrc pour trouver un nom d'utilisateur et un mot de passe pour le site distant avec lequel une connexion est établie.

CURLOPT_NOBODY (int)

true pour exclure le corps de la sortie. La méthode de requête est alors définie sur HEAD. Changer cela en false ne le change pas en GET.

CURLOPT_NOPROGRESS (int)

true pour désactiver la barre de progression pour les transferts cURL.

Note:

PHP définit automatiquement cette option à true, cela ne devrait être changé que pour des raisons de débogage.

CURLOPT_NOSIGNAL (int)

true pour ignorer toute fonction cURL qui envoie un signal au processus PHP. Cela est activé par défaut dans les SAPI multi-thread pour que les options de délai d'attente puissent toujours être utilisées. Disponible depuis cURL 7.10.

CURLOPT_PASSWDFUNCTION (int)

Une fonction de rappel acceptant trois paramètres. Le premier est la ressource cURL, le second est une chaîne contenant un prompt de mot de passe, et le troisième est la longueur maximale du mot de passe. Retourne la chaîne contenant le mot de passe. Enlevé depuis PHP 7.3.0.

CURLOPT_PASSWORD (int)

Le mot de passe à utiliser dans d'authentification. Disponible depuis cURL 7.19.1.

CURLOPT_PATH_AS_IS (int)

true pour ne pas traiter les séquences de points. Disponible depuis PHP 7.0.7 et cURL 7.42.0

CURLOPT_PINNEDPUBLICKEY (int)

Définit la clé publique épinglée. La chaîne peut être le nom de fichier de votre clé publique épinglée. Le format de fichier attendu est "PEM" ou "DER". La chaîne peut aussi être un nombre quelconque de hachages sha256 encodés en base64 précédés de "sha256//" et séparés par ";". Disponible depuis PHP 7.0.7 et cURL 7.39.0

CURLOPT_PIPEWAIT (int)

true pour attendre le pipelining/multiplexage. Disponible depuis PHP 7.0.7 et cURL 7.43.0

CURLOPT_PORT (int)

Une alternative au numéro de port pour se connecter.

CURLOPT_POST (int)

true pour effectuer un POST HTTP régulier. Ce POST est le type application/x-www-form-urlencoded le plus couramment utilisé par les formulaires HTML.

CURLOPT_POSTFIELDS (int)

Les données complètes à envoyer dans une opération HTTP "POST". Ce paramètre peut être passé soit sous forme de chaîne urlencodée comme 'para1=val1&para2=val2&...' ou sous forme d'un tableau avec le nom du champ comme clé et les données du champ comme valeur. Si value est un tableau, l'en-tête Content-Type sera défini sur multipart/form-data. Les fichiers peuvent être envoyés en utilisant CURLFile ou CURLStringFile, auquel cas value doit être un tableau.

CURLOPT_POSTQUOTE (int)

Un tableau de commandes FTP à exécuter sur le serveur après la requête FTP a été effectuée.

CURLOPT_POSTREDIR (int)

Un masque de bits de 1 (301 Moved Permanently), 2 (302 Found) et 4 (303 See Other) si la méthode HTTP POST doit être maintenue lorsque CURLOPT_FOLLOWLOCATION est défini et qu'un type spécifique de redirection se produit. Disponible depuis cURL 7.19.1.

CURLOPT_PRE_PROXY (int)

Définit une chaîne string contenant le nom d'hôte ou l'adresse IP numérique pointée à utiliser comme préproxy auquel curl se connecte avant de se connecter au proxy HTTP(S) spécifié dans l'option CURLOPT_PROXY pour la prochaine requête. Le préproxy ne peut être qu'un proxy SOCKS et il doit être préfixé par [scheme]:// pour spécifier quel type de chaussettes est utilisé. Une adresse IP numérique IPv6 doit être écrite entre [crochets]. Définir le préproxy sur une chaîne vide désactive explicitement l'utilisation d'un préproxy. Pour spécifier le numéro de port dans cette chaîne, ajoutez :[port] à la fin du nom d'hôte. Le numéro de port du proxy peut éventuellement être spécifié avec l'option séparée CURLOPT_PROXYPORT. Par défaut, utilise le port 1080 pour les proxys si un port n'est pas spécifié. Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PRIVATE (int)

N'importe quelle donnée qui devrait être associée à ce gestionnaire cURL. Ces données peuvent ensuite être récupérées avec l'option CURLINFO_PRIVATE de curl_getinfo(). cURL ne fait rien avec ces données. Lors de l'utilisation d'un gestionnaire cURL multi, ces données privées sont typiquement une clé unique pour identifier un gestionnaire cURL standard. Disponible depuis cURL 7.10.3.

CURLOPT_PROGRESSFUNCTION (int)

Une fonction de rappel acceptant cinq paramètres. Le premier est la ressource cURL, le second est le nombre total d'octets attendus à être téléchargés, le troisième est le nombre d'octets téléchargés jusqu'à présent, le quatrième est le nombre total d'octets attendus à être téléversés, et le cinquième est le nombre d'octets téléversés jusqu'à présent.

Note:

La fonction est appelée lorsque l'option CURLOPT_NOPROGRESS est définie sur false.

Renvoyer un non-zéro pour annuler la transfert. Dans ce cas, le transfert définira une erreur CURLE_ABORTED_BY_CALLBACK.

CURLOPT_PROTOCOLS (int)

Un masque de bits de valeurs CURLPROTO_*. Si utilisé, ce masque limite les protocoles que libcurl peut utiliser dans le transfert. Cela vous permet d'avoir un libcurl compilé pour supporter une large gamme de protocoles mais de limiter des transferts spécifiques à n'utiliser qu'un sous-ensemble d'entre eux. Par défaut, libcurl acceptera tous les protocoles qu'il supporte. Voir CURLOPT_REDIR_PROTOCOLS. Les protocoles valides sont : CURLPROTO_HTTP, CURLPROTO_HTTPS, CURLPROTO_FTP, CURLPROTO_FTPS, CURLPROTO_SCP, CURLPROTO_SFTP, CURLPROTO_TELNET, CURLPROTO_LDAP, CURLPROTO_LDAPS, CURLPROTO_DICT, CURLPROTO_FILE, CURLPROTO_TFTP, CURLPROTO_MQTT, CURLPROTO_ALL Disponible depuis cURL 7.19.4.

CURLOPT_PROTOCOLS_STR (int)

Disponible depuis PHP 8.3.0 et cURL 7.85.0

CURLOPT_PROXY (int)

Le proxy HTTP pour tunneler les requêtes à travers.

CURLOPT_PROXYAUTH (int)

La méthode d'authentification HTTP à utiliser pour la connexion au proxy Utiliser les mêmes masques de bits que décrits dans CURLOPT_HTTPAUTH. Pour l'authentification du proxy, seulement CURLAUTH_BASIC et CURLAUTH_NTLM sont actuellement supportés. Disponible depuis cURL 7.10.7.

CURLOPT_PROXYHEADER (int)

Un tableau d'en-têtes HTTP personnalisés à envoyer au proxy. Disponible depuis PHP 7.0.7 et cURL 7.37.0

CURLOPT_PROXYPORT (int)

Le numéro de port du proxy à connecter. Ce numéro de port peut aussi être défini dans CURLOPT_PROXY.

CURLOPT_PROXYTYPE (int)

Soit CURLPROXY_HTTP (défaut), CURLPROXY_SOCKS4, CURLPROXY_SOCKS5, CURLPROXY_SOCKS4A ou CURLPROXY_SOCKS5_HOSTNAME. Disponible depuis cURL 7.10.

CURLOPT_PROXYUSERPWD (int)

Un nom d'utilisateur et un mot de passe formatés comme "[username]:[password]" à utiliser pour la connexion au proxy.

CURLOPT_PROXY_CAINFO (int)

Le chemin vers le fichier de certificats du proxy Certificate Authority (CA). Définir le chemin comme une string nommant un fichier contenant un ou plusieurs certificats pour vérifier le proxy HTTPS. Cette option est pour se connecter à un proxy HTTPS, pas à un serveur HTTPS. La valeur par défaut est le chemin système où le bundle cacert de libcurl est supposé être stocké. Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PROXY_CAINFO_BLOB (int)

Le nom du fichier PEM contenant un ou plusieurs certificats pour vérifier le proxy HTTPS. Cette option est pour se connecter à un proxy HTTPS, pas à un serveur HTTPS. Par défaut, le chemin système où le bundle cacert de libcurl est supposé être stocké. Disponible depuis PHP 8.2.0 et cURL 7.77.0

CURLOPT_PROXY_CAPATH (int)

Le répertoire contenant plusieurs certificats CA pour vérifier le proxy HTTPS. Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PROXY_CRLFILE (int)

Définit le nom de fichier avec la concaténation de la liste de révocation de certificat (CRL) au format PEM à utiliser dans la validation du certificat qui se produit pendant l'échange SSL. Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PROXY_ISSUERCERT (int)

Le nom de fichier du certificat SSL de l'émetteur du proxy. Disponible depuis PHP 8.1.0 et cURL 7.71.0.

CURLOPT_PROXY_ISSUERCERT_BLOB (int)

Le certificat SSL de l'émetteur du proxy à partir du blob de mémoire. Disponible depuis PHP 8.1.0 et cURL 7.71.0.

CURLOPT_PROXY_KEYPASSWD (int)

Définit la chaîne à utiliser comme mot de passe pour charger la clé privée CURLOPT_PROXY_SSLKEY. Vous n'avez jamais besoin d'un mot de passe pour charger un certificat mais vous en avez besoin pour charger votre clé privée. Cette option est pour se connecter à un proxy HTTPS, pas à un serveur HTTPS. Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PROXY_PINNEDPUBLICKEY (int)

Définit la clé publique épinglée pour le proxy HTTPS. La chaîne peut être le nom de fichier de votre clé publique épinglée. Le format de fichier attendu est "PEM" ou "DER". La chaîne peut aussi être un nombre quelconque de hachages sha256 encodés en base64 précédés de "sha256//" et séparés par ";". Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PROXY_SERVICE_NAME (int)

Le nom du service d'authentification du proxy. Disponible depuis PHP 7.0.7, cURL 7.43.0 (pour les proxies HTTP) et cURL 7.49.0 (pour les proxies SOCKS5).

CURLOPT_PROXY_SSLCERT (int)

Le nom du fichier de votre certificat client utilisé pour se connecter au proxy HTTPS. Le format par défaut est "P12" sur Secure Transport et "PEM" sur les autres moteurs, et peut être changé avec CURLOPT_PROXY_SSLCERTTYPE. Avec NSS ou Secure Transport, cela peut aussi être le surnom du certificat avec lequel vous souhaitez vous authentifier tel qu'il est nommé dans la base de données de sécurité. Si vous voulez utiliser un fichier du répertoire courant, veuillez le préfixer avec le préfixe "./" pour éviter toute confusion avec un surnom. Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PROXY_SSLCERTTYPE (int)

Le format de votre certificat client utilisé pour se connecter au proxy HTTPS. Les formats supportés sont "PEM" et "DER", sauf avec Secure Transport. OpenSSL (versions 0.9.3 et ultérieures) et Secure Transport (sur iOS 5 ou ultérieur, ou OS X 10.7 ou ultérieur) supportent également "P12" pour les fichiers encodés en PKCS#12. Par défaut, c'est "PEM". Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PROXY_SSLCERT_BLOB (int)

Le certificat client pour le proxy HTTPS à partir du blob de mémoire. Disponible depuis PHP 8.1.0 et cURL 7.71.0.

CURLOPT_PROXY_SSLKEY (int)

Le nom de fichier de votre clé privée utilisée pour se connecter au proxy HTTPS. Le format par défaut est "PEM" et peut être changé avec CURLOPT_PROXY_SSLKEYTYPE. (iOS et Mac OS X uniquement) Cette option est ignorée si curl a été compilé avec Secure Transport. Disponible si compilé avec TLS. Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PROXY_SSLKEYTYPE (int)

Le format de votre clé privée. Les formats supportés sont "PEM", "DER" et "ENG". Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PROXY_SSLKEY_BLOB (int)

La clé privée pour le certificat du proxy HTTPS à partir du blob de mémoire. Disponible depuis PHP 8.1.0 et cURL 7.71.0.

CURLOPT_PROXY_SSLVERSION (int)

Une des CURL_SSLVERSION_DEFAULT, CURL_SSLVERSION_TLSv1, CURL_SSLVERSION_TLSv1_0, CURL_SSLVERSION_TLSv1_1, CURL_SSLVERSION_TLSv1_2, CURL_SSLVERSION_TLSv1_3, CURL_SSLVERSION_MAX_DEFAULT, CURL_SSLVERSION_MAX_TLSv1_0, CURL_SSLVERSION_MAX_TLSv1_1, CURL_SSLVERSION_MAX_TLSv1_2, CURL_SSLVERSION_MAX_TLSv1_3, CURL_SSLVERSION_SSLv3 .

Avertissement

Il est préférable de ne pas définir cette option et de laisser la valeur par défaut CURL_SSLVERSION_DEFAULT qui tentera de déterminer la version du protocole SSL distant.

Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PROXY_SSL_CIPHER_LIST (int)

La liste des suites de chiffrement à utiliser pour la connexion au proxy HTTPS. La liste doit être syntaxiquement correcte, elle se compose d'une ou plusieurs chaînes de suites de chiffrement séparées par des deux-points. Les virgules ou les espaces sont également des séparateurs acceptables mais les deux-points sont normalement utilisés, !, - et + peuvent être utilisés comme opérateurs. Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PROXY_SSL_OPTIONS (int)

Définit les options de comportement SSL du proxy, qui est un masque de bits des constantes suivantes : CURLSSLOPT_ALLOW_BEAST, CURLSSLOPT_NO_REVOKE, CURLSSLOPT_NO_PARTIALCHAIN Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PROXY_SSL_VERIFYHOST (int)

Définir sur 2 pour vérifier dans les champs de nom du certificat du proxy contre le nom du proxy. Lorsqu'il est défini sur 0, la connexion réussit indépendamment des noms utilisés dans le certificat. Utilisez cette capacité avec prudence! 1 est traité comme une option de débogage dans curl 7.28.0 et précédent. De curl 7.28.1 à 7.65.3 CURLE_BAD_FUNCTION_ARGUMENT est retourné. À partir de curl 7.66.0, 1 et 2 sont traités comme la même valeur. En environnement de production, la valeur de cette option doit être maintenue à 2 (valeur par défaut). Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PROXY_SSL_VERIFYPEER (int)

false pour arrêter cURL de vérifier le certificat du proxy. Des certificats alternatifs à vérifier peuvent être spécifiés avec l'option CURLOPT_PROXY_CAINFO ou un répertoire de certificats peut être spécifié avec l'option CURLOPT_PROXY_CAPATH. Lorsque défini sur false, la vérification du certificat du proxy réussit indépendamment. true par défaut. Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PROXY_TLS13_CIPHERS (int)

La liste des suites de chiffrement à utiliser pour la connexion TLS 1.3 au proxy. La liste doit être syntaxiquement correcte, elle se compose d'une ou plusieurs chaînes de suites de chiffrement séparées par des deux-points. Cette option est actuellement utilisée uniquement lorsque curl est compilé pour utiliser OpenSSL 1.1.1 ou ultérieur. Si vous utilisez un autre backend SSL, vous pouvez essayer de définir les suites de chiffrement TLS 1.3 en utilisant l'option CURLOPT_PROXY_SSL_CIPHER_LIST. Disponible lorsque compilé avec OpenSSL >= 1.1.1. Disponible depuis PHP 7.3.0 et cURL 7.61.0

CURLOPT_PROXY_TLSAUTH_PASSWORD (int)

Le mot de passe à utiliser pour la méthode d'authentification TLS du proxy HTTPS spécifiée avec l'option CURLOPT_PROXY_TLSAUTH_TYPE. Nécessite également que l'option CURLOPT_PROXY_TLSAUTH_USERNAME soit définie. Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PROXY_TLSAUTH_TYPE (int)

La méthode d'authentification TLS utilisée pour la connexion HTTPS. La méthode supportée est "SRP".

Note:

L'authentification Secure Remote Password (SRP) pour TLS fournit une authentification mutuelle si les deux parties ont un secret partagé. Pour utiliser TLS-SRP, vous devez également définir les options CURLOPT_PROXY_TLSAUTH_USERNAME et CURLOPT_PROXY_TLSAUTH_PASSWORD.

Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PROXY_TLSAUTH_USERNAME (int)

Le nom d'utilisateur à utiliser pour la méthode d'authentification TLS du proxy HTTPS spécifiée avec l'option CURLOPT_PROXY_TLSAUTH_TYPE. Nécessite également que l'option CURLOPT_PROXY_TLSAUTH_PASSWORD soit définie. Disponible depuis PHP 7.3.0 et cURL 7.52.0

CURLOPT_PUT (int)

true pour effectuer une requête HTTP PUT d'un fichier. Le fichier à mettre doit être défini avec CURLOPT_INFILE et CURLOPT_INFILESIZE.

CURLOPT_QUICK_EXIT (int)

Disponible depuis PHP 8.3.0 et cURL 7.87.0

CURLOPT_QUOTE (int)

Un tableau de commandes FTP à exécuter sur le serveur avant la requête FTP.

CURLOPT_RANDOM_FILE (int)

Un nom de fichier à utiliser pour initialiser le générateur de nombres aléatoires pour SSL.

CURLOPT_RANGE (int)

La plage de données à récupérer au format "X-Y" où X ou Y sont optionnels. Les transferts HTTP supportent également plusieurs intervalles, séparés par des virgules au format "X-Y,N-M".

CURLOPT_READFUNCTION (int)

Une fonction de rappel acceptant trois paramètres. Le premier est la ressource cURL, le second est une ressource de flux fournie à cURL via l'option CURLOPT_INFILE, et le troisième est la quantité maximale de données à lire. La fonction de rappel doit renvoyer une chaîne d'une longueur égale ou inférieure à la quantité de données demandée, typiquement en la lisant à partir de la ressource de flux passée. Elle doit renvoyer une chaîne vide pour signaler la fin du fichier.

CURLOPT_REDIR_PROTOCOLS (int)

Un masque de bits de valeurs CURLPROTO_*. Si utilisé, ce masque limite les protocoles que libcurl peut utiliser dans un transfert qu'il suit dans une redirection lorsque CURLOPT_FOLLOWLOCATION est activé. Cela vous permet de limiter des transferts spécifiques à n'utiliser qu'un sous-ensemble de protocoles dans les redirections. Par défaut, libcurl acceptera tous les protocoles sauf FILE et SCP. C'est une différence par rapport aux versions antérieures à 7.19.4 qui suivraient inconditionnellement tous les protocoles supportés. Voir aussi CURLOPT_PROTOCOLS pour les valeurs constantes de protocole. Disponible depuis cURL 7.19.4.

CURLOPT_REDIR_PROTOCOLS_STR (int)

Disponible depuis PHP 8.3.0 et cURL 7.85.0.

CURLOPT_REFERER (int)

Le contenu de l'en-tête "Referer: " à utiliser dans une requête HTTP.

CURLOPT_REQUEST_TARGET (int)

Disponible depuis PHP 7.3.0 et cURL 7.55.0.

CURLOPT_RESOLVE (int)

Apporte une adresse personnalisée pour un hôte et un port spécifiques. Un tableau de chaînes de nom d'hôte, de port et d'adresse IP, chaque élément séparé par un deux-points. Dans le format : array("example.com:80:127.0.0.1") Disponible depuis cURL 7.21.3.

CURLOPT_RESUME_FROM (int)

L'offset, en octets, pour reprendre un transfert.

CURLOPT_RETURNTRANSFER (int)

true pour retourner la réponse en tant que chaîne de la fonction curl_exec() au lieu de l'afficher directement.

CURLOPT_SAFE_UPLOAD (int)

Toujours true, ce qui désactive le support du préfixe "@" pour l'envoi de fichiers dans CURLOPT_POSTFIELDS, ce qui signifie que les valeurs commençant par "@" peuvent être passées en toute sécurité en tant que champs. CURLFile peut être utilisé pour les téléversements à la place.

CURLOPT_SASL_AUTHZID (int)

L'identité d'autorisation (authzid) pour le transfert. Applicable uniquement au mécanisme d'authentification SASL PLAIN où il est facultatif. Lorsqu'il n'est pas spécifié, seule l'identité d'authentification (authcid) telle que spécifiée par le nom d'utilisateur sera envoyée au serveur, avec le mot de passe. Le serveur déduira l'authzid de l'authcid lorsqu'il ne sera pas fourni, qu'il utilisera ensuite en interne. Disponible depuis PHP 8.2.0 et cURL 7.66.0

CURLOPT_SASL_IR (int)

true pour activer l'initialisation de la réponse SASL (SASL Initial Response). Disponible depuis PHP 7.0.7 et cURL 7.31.0

CURLOPT_SERVICE_NAME (int)

Le nom du service d'authentification. Disponible depuis PHP 7.0.7 et cURL 7.43.0

CURLOPT_SHARE (int)

Un résultat de curl_share_init(). Fait en sorte que le gestionnaire cURL utilise les données du gestionnaire partagé.

CURLOPT_SOCKS5_AUTH (int)

La méthode d'authentification SOCKS5 à utiliser. Les options sont : CURLAUTH_BASIC, CURLAUTH_GSSAPI, CURLAUTH_NONE. L'opération bit à bit | (ou) peut être utilisée pour combiner une ou plusieurs méthodes. Si cela est fait, cURL interrogera le serveur pour voir quelles méthodes il prend en charge et choisira la meilleure. CURLAUTH_BASIC permet l'authentification par nom d'utilisateur/mot de passe. CURLAUTH_GSSAPI permet l'authentification GSS-API. CURLAUTH_NONE n'autorise aucune authentification. Par défaut, CURLAUTH_BASIC|CURLAUTH_GSSAPI. Définissez le nom d'utilisateur et le mot de passe réels avec l'option CURLOPT_PROXYUSERPWD. Disponible depuis PHP 7.3.0 et cURL 7.55.0

CURLOPT_SSH_AUTH_TYPES (int)

Un masque de bits composé de l'une ou plusieurs des constantes CURLSSH_AUTH_PUBLICKEY, CURLSSH_AUTH_PASSWORD, CURLSSH_AUTH_HOST, CURLSSH_AUTH_KEYBOARD. Définissez-le sur CURLSSH_AUTH_ANY pour laisser libcurl en choisir un. Disponible depuis cURL 7.16.1.

CURLOPT_SSH_COMPRESSION (int)

true pour activer la compression SSH intégrée. C'est une demande, pas un ordre ; le serveur peut ou non le faire. Disponible depuis PHP 7.3.0 et cURL 7.56.0

CURLOPT_SSH_HOSTKEYFUNCTION (int)

Disponible depuis PHP 8.3.0 et cURL 7.84.0

CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 (int)

Une chaîne contenant 32 chiffres hexadécimaux. La chaîne doit être le hachage MD5 de la clé publique de l'hôte distant, et libcurl rejettera la connexion à l'hôte à moins que les sommes de contrôle md5 ne correspondent. Cette option est uniquement pour les transferts SCP et SFTP. Disponible depuis cURL 7.17.1.

CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256 (int)

Le hachage SHA256 encodé en base64 de la clé publique de l'hôte distant. Le transfert échouera si le hachage donné ne correspond pas au hachage fourni par l'hôte distant. Disponible depuis PHP 8.2.0 et cURL 7.80.0

CURLOPT_SSH_PRIVATE_KEYFILE (int)

Le nom du fichier de votre clé privée. Si non utilisé, libcurl utilise par défaut $HOME/.ssh/id_dsa si la variable d'environnement HOME est définie, et juste "id_dsa" dans le répertoire courant si HOME n'est pas défini. Si le fichier est protégé par mot de passe, définissez le mot de passe avec CURLOPT_KEYPASSWD. Disponible depuis cURL 7.16.1.

CURLOPT_SSH_PUBLIC_KEYFILE (int)

Le nom du fichier de votre clé publique. Si non utilisé, libcurl utilise par défaut $HOME/.ssh/id_dsa.pub si la variable d'environnement HOME est définie, et juste "id_dsa.pub" dans le répertoire courant si HOME n'est pas défini. Disponible depuis cURL 7.16.1.

CURLOPT_SSLCERT (int)

Le nom d'un fichier contenant un certificat au format PEM.

CURLOPT_SSLCERTPASSWD (int)

Le mot de passe requis pour utiliser le certificat CURLOPT_SSLCERT.

CURLOPT_SSLCERTTYPE (int)

Le format du certificat. Les formats supportés sont "PEM" (par défaut), "DER", et "ENG". À partir de OpenSSL 0.9.3, "P12" (pour les fichiers encodés en PKCS#12) est également supporté. Disponible depuis cURL 7.9.3.

CURLOPT_SSLCERT_BLOB (int)

Le certificat client à partir du blob de mémoire. Disponible depuis PHP 8.1.0 et cURL 7.71.0.

CURLOPT_SSLENGINE (int)

L'identifiant du moteur de cryptographie de la clé SSL privée spécifiée dans CURLOPT_SSLKEY.

CURLOPT_SSLENGINE_DEFAULT (int)

L'identifiant du moteur de cryptographie utilisé pour les opérations de cryptographie asymétrique.

CURLOPT_SSLKEY (int)

Le nom d'un fichier contenant une clé privée SSL.

CURLOPT_SSLKEYPASSWD (int)

Le mot de passe requis pour utiliser la clé privée SSL spécifiée dans CURLOPT_SSLKEY.

Note:

Puisque cette option contient un mot de passe sensible, n'oubliez pas de garder le script PHP dans lequel il est contenu en sécurité.

CURLOPT_SSLKEYTYPE (int)

Le type de clé privée SSL spécifié dans CURLOPT_SSLKEY. Les types de clé supportés sont "PEM" (par défaut), "DER", et "ENG".

CURLOPT_SSLKEY_BLOB (int)

La clé privée SSL à partir du blob de mémoire. Disponible depuis PHP 8.1.0 et cURL 7.71.0.

CURLOPT_SSLVERSION (int)

Une des constantes suivantes : CURL_SSLVERSION_DEFAULT, CURL_SSLVERSION_TLSv1, CURL_SSLVERSION_SSLv2, CURL_SSLVERSION_SSLv3, CURL_SSLVERSION_TLSv1_0, CURL_SSLVERSION_TLSv1_1, CURL_SSLVERSION_TLSv1_2, CURL_SSLVERSION_TLSv1_3 . Le maximum de la version TLS peut être défini en utilisant une des constantes CURL_SSLVERSION_MAX_*. Il est également possible de faire un OU binaire avec une des constantes CURL_SSLVERSION_* avec une des constantes CURL_SSLVERSION_MAX_*. CURL_SSLVERSION_MAX_DEFAULT (la verison maximum supportée par la librairie), CURL_SSLVERSION_MAX_TLSv1_0, CURL_SSLVERSION_MAX_TLSv1_1, CURL_SSLVERSION_MAX_TLSv1_2, CURL_SSLVERSION_MAX_TLSv1_3 .

Avertissement

Il est préférable de ne pas définir cette option et de laisser les valeurs par défaut. Définir cette option à CURL_SSLVERSION_SSLv2 ou CURL_SSLVERSION_SSLv3 il est très dangereux, étant donné les vulnérabilités connues dans SSLv2 et SSLv3.

CURLOPT_SSL_CIPHER_LIST (int)

Une liste de suites de chiffrement à utiliser pour SSL. Par exemple, RC4-SHA et TLSv1 sont des listes de suites de chiffrement valides.

CURLOPT_SSL_EC_CURVES (int)

Un liste de courbes elliptiques délimitées par des deux-points. Par exemple, X25519:P-521 est une liste de deux courbes elliptiques valides. Cette option définit les algorithmes d'échange de clés du client dans la poignée de main SSL, si le backend SSL cURL est compilé pour l'utiliser. Disponible depuis PHP 8.2.0 et cURL 7.73.0

CURLOPT_SSL_ENABLE_ALPN (int)

false to disable ALPN in the SSL handshake (if the SSL backend libcurl is built to use supports it), which can be used to negotiate http2. Disponible depuis PHP 7.0.7 et cURL 7.36.0

CURLOPT_SSL_ENABLE_NPN (int)

false pour désactiver NPN dans la poignée de main SSL (si le backend SSL libcurl est compilé pour l'utiliser), ce qui peut être utilisé pour négocier http2. Disponible depuis PHP 7.0.7 et cURL 7.36.0

CURLOPT_SSL_FALSESTART (int)

true pour activer le démarrage TLS false. Disponible depuis PHP 7.0.7 et cURL 7.42.0

CURLOPT_SSL_OPTIONS (int)

Set SSL behavior options, which is a bitmask of the following constants: CURLSSLOPT_ALLOW_BEAST, CURLSSLOPT_NO_REVOKE, CURLSSLOPT_AUTO_CLIENT_CERT, CURLSSLOPT_NATIVE_CA, CURLSSLOPT_NO_PARTIALCHAIN, CURLSSLOPT_REVOKE_BEST_EFFORT Disponible depuis PHP 7.0.7. et cURL 7.25.0

CURLOPT_SSL_VERIFYHOST (int)

2 pour vérifier qu'un champ de nom commun ou un champ de nom alternatif dans le certificat SSL du pair correspond au nom d'hôte fourni. 0 pour ne pas vérifier les noms. 1 ne doit pas être utilisé. En production, la valeur de cette option doit être conservée à 2 (valeur par défaut). Le support de la valeur 1 a été supprimé dans cURL 7.28.1.

CURLOPT_SSL_VERIFYPEER (int)

false pour empêcher cURL de vérifier le certificat du pair. Des certificats alternatifs à vérifier peuvent être spécifiés avec l'option CURLOPT_CAINFO ou un répertoire de certificats peut être spécifié avec l'option CURLOPT_CAPATH. true par défaut à partir de cURL 7.10. Bundle par défaut installé à partir de cURL 7.10.

CURLOPT_SSL_VERIFYSTATUS (int)

true pour vérifier le statut du certificat. Disponible depuis PHP 7.0.7 et cURL 7.41.0

CURLOPT_STDERR (int)

Une location alternative pour afficher les erreurs à la place de STDERR.

CURLOPT_STREAM_WEIGHT (int)

Définit le poids du flux numérique (un nombre entre 1 et 256). Disponible depuis PHP 7.0.7 et cURL 7.46.0

CURLOPT_SUPPRESS_CONNECT_HEADERS (int)

true pour supprimer les en-têtes de réponse proxy CONNECT des fonctions de rappel utilisateur CURLOPT_HEADERFUNCTION et CURLOPT_WRITEFUNCTION, lorsque CURLOPT_HTTPPROXYTUNNEL est utilisé et une requête CONNECT est effectuée. Disponible depuis PHP 7.3.0 et cURL 7.54.0

CURLOPT_TCP_FASTOPEN (int)

true pour activer l'ouverture rapide TCP. Disponible depuis PHP 7.0.7 et cURL 7.49.0

CURLOPT_TCP_KEEPALIVE (int)

Si défini à 1, des sondes de maintien de la connexion TCP seront envoyées. Le déliat et la fréquence de ces sondes peuvent être contrôlés par les options CURLOPT_TCP_KEEPIDLE et CURLOPT_TCP_KEEPINTVL, à condition que le système d'exploitation les supporte. Si défini à 0 (par défaut), les sondes de maintien de la connexion sont désactivées. Disponible depuis cURL 7.25.0

CURLOPT_TCP_KEEPIDLE (int)

Défini le délai, en secondes, que le système d'exploitation attendra pendant que la connexion est inutilisée avant d'envoyer des sondes de maintien de la connexion, si CURLOPT_TCP_KEEPALIVE est activé. Tous les systèmes d'exploitation ne supportent pas cette option. La valeur par défaut est 60. Disponible depuis cURL 7.25.0

CURLOPT_TCP_KEEPINTVL (int)

Définit l'intervalle, en secondes, que le système d'exploitation attendra entre l'envoi des sondes de maintien de la connexion, si CURLOPT_TCP_KEEPALIVE est activé. Tous les systèmes d'exploitation ne supportent pas cette option. La valeur par défaut est 60. Disponible depuis cURL 7.25.0

CURLOPT_TCP_NODELAY (int)

true pour désactiver l'algorithme de Nagle TCP, qui tente de minimiser le nombre de petits paquets sur le réseau. Disponible depuis cURL 7.11.2.

CURLOPT_TFTP_NO_OPTIONS (int)

true pour ne pas envoyer de requêtes d'options TFTP. Disponible depuis PHP 7.0.7 et cURL 7.48.0

CURLOPT_TIMECONDITION (int)

Comment CURLOPT_TIMEVALUE est traité. Utilisez CURL_TIMECOND_IFMODSINCE pour retourner la page uniquement si elle a été modifiée depuis le temps spécifié dans CURLOPT_TIMEVALUE. Si elle n'a pas été modifiée, un en-tête "304 Not Modified" sera retourné en supposant que CURLOPT_HEADER est true. Utiliser CURL_TIMECOND_IFUNMODSINCE pour l'effet inverse. Utiliser CURL_TIMECOND_NONE pour ignorer CURLOPT_TIMEVALUE et toujours retourner la page. CURL_TIMECOND_NONE est la valeur par défaut. Avant cURL 7.46.0 la valeur par défaut était CURL_TIMECOND_IFMODSINCE.

CURLOPT_TIMEOUT (int)

Le nombre maximum de secondes à attendre pour les fonctions cURL.

CURLOPT_TIMEOUT_MS (int)

Le nombre maximum de millisecondes à attendre pour les fonctions cURL s'éxécutent. Si libcurl est compilé pour utiliser le résolveur de noms système standard, cette partie de la connexion utilisera toujours une résolution de seconde complète pour les délais d'attente avec un délai minimum autorisé d'une seconde. Disponible depuis cURL 7.16.2.

CURLOPT_TIMEVALUE (int)

Le temps en secondes depuis le 1er janvier 1970. Le temps sera utilisé par CURLOPT_TIMECONDITION.

CURLOPT_TIMEVALUE_LARGE (int)

Le temps en secondes depuis le 1er janvier 1970. Le temps sera utilisé par CURLOPT_TIMECONDITION. Par défaut à zéro. La différence entre cette option et CURLOPT_TIMEVALUE est le type de l'argument. Sur les systèmes où 'long' n'est que de 32 bits de large, cette option doit être utilisée pour définir des dates au-delà de l'année 2038. Disponible depuis PHP 7.3.0 et cURL 7.59.0

CURLOPT_TLS13_CIPHERS (int)

La liste des suites de chiffrement à utiliser pour la connexion TLS 1.3. La liste doit être syntaxiquement correcte, elle se compose d'une ou plusieurs chaînes de suites de chiffrement séparées par des deux-points. Cette option est actuellement utilisée uniquement lorsque cURL est compilé pour utiliser OpenSSL 1.1.1 ou ultérieur. Si vous utilisez un autre backend SSL, vous pouvez essayer de définir les suites de chiffrement TLS 1.3 en utilisant l'option CURLOPT_SSL_CIPHER_LIST. Disponible lorsque compilé avec OpenSSL >= 1.1.1. Disponible depuis PHP 7.3.0 et cURL 7.61.0

CURLOPT_TRANSFERTEXT (int)

true to use ASCII mode for FTP transfers. Pour LDAP, il récupère les données en texte brut au lieu de HTML. Sur les systèmes Windows, il ne définira pas STDOUT en mode binaire.

CURLOPT_UNIX_SOCKET_PATH (int)

Active l'utilisation des sockets de domaine Unix comme point de connexion et définit le chemin du string donné. Disponible depuis PHP 7.0.7 et cURL 7.40.0

CURLOPT_UNRESTRICTED_AUTH (int)

true pour continuer à envoyer le nom d'utilisateur et le mot de passe lors du suivi des emplacements (en utilisant CURLOPT_FOLLOWLOCATION), même lorsque le nom d'hôte a changé.

CURLOPT_UPKEEP_INTERVAL_MS (int)

Quelques protocoles ont des mécanismes de "maintenance de la connexion". Ces mécanismes envoient généralement du trafic sur les connexions existantes pour les maintenir en vie. Cette option définit l'intervalle de maintenance de la connexion. Actuellement, le seul protocole avec un mécanisme de maintenance de la connexion est HTTP/2. Lorsque l'intervalle de maintenance de la connexion est dépassé, un cadre PING HTTP/2 est envoyé sur la connexion. La valeur par défaut est 60 secondes. Disponible depuis PHP 8.2.0 et cURL 7.62.0

CURLOPT_UPLOAD (int)

true to prepare for an upload.

CURLOPT_UPLOAD_BUFFERSIZE (int)

Le tampon de taille préférée en octets pour le téléchargement cURL. La taille du tampon de téléchargement par défaut est de 64 kilo-octets. La taille maximale du tampon autorisée à être définie est de 2 méga-octets. La taille minimale du tampon autorisée à être définie est de 16 kilo-octets. Disponible depuis PHP 8.2.0 et cURL 7.62.0

CURLOPT_URL (int)

L'URL à récupérer. Cela peut également être défini lors de l'initialisation d'une session avec curl_init().

CURLOPT_USERAGENT (int)

Le contenu de l'en-tête "User-Agent: " à utiliser dans une requête HTTP.

CURLOPT_USERNAME (int)

Le nom d'utilisateur à utiliser dans l'authentification. Disponible depuis cURL 7.19.1

CURLOPT_USERPWD (int)

Le nom d'utilisateur et le mot de passe sous la forme "[username]:[password]" à utiliser pour la connexion.

CURLOPT_VERBOSE (int)

true pour afficher des informations détaillées sur la connexion. Écrit la sortie sur STDERR, ou le fichier spécifié en utilisant CURLOPT_STDERR.

CURLOPT_WRITEFUNCTION (int)

Une fonction de rappel acceptant deux paramètres. Le premier est le gestionnaire cURL, et le second est une chaîne contenant les données à écrire. Les données doivent être enregistrées par ce rappel. Il doit retourner le nombre exact d'octets écrits ou le transfert sera interrompu avec une erreur.

CURLOPT_WRITEHEADER (int)

Le fichier où la partie en-tête du transfert est écrite.

CURLOPT_WS_OPTIONS (int)

Disponible depuis PHP 8.3.0 et cURL 7.86.0

CURLOPT_XFERINFOFUNCTION (int)

Une fonction de rappel acceptant deux paramètres. A une fonction similaire à CURLOPT_PROGRESSFUNCTION mais est plus moderne et l'option préférée de cURL. Disponible depuis PHP 8.2.0 et cURL 7.32.0.

CURLOPT_XOAUTH2_BEARER (int)

Spécife le jeton d'accès OAuth 2.0. Disponible depuis PHP 7.0.7 et cURL 7.33.0

curl_share_setopt()
Constantes Description
CURL_LOCK_DATA_CONNECT (int) Partage/départage la connexion. Disponible à partir de PHP 7.3.0 et cURL 7.10.0
Partage/départage les données de cookie.
CURL_LOCK_DATA_DNS (int) Partage/départage le cache DNS. Il est à noter que lorsque vous utilisez des gestionnaires multiples cURL, toutes les gestionnaires ajoutés au gestionnaire multiple partageront le cache DNS par défaut.
CURL_LOCK_DATA_PSL (int) Partage/départage la liste des suffixes publics. Disponible à partir de PHP 7.3.0 et cURL 7.61.0
CURL_LOCK_DATA_SSL_SESSION (int) Partage/départage les identifiants de session SSL, réduisant le temps passé sur la poignée SSL lors de la reconnexion au même serveur. Il est à noter que les identifiants de session SSL sont réutilisés dans le même gestionnaire par défaut.
CURLSHOPT_NONE (int)
CURLSHOPT_SHARE (int) Spécifie un type de données à partager.
CURLSHOPT_UNSHARE (int) Spécifie un type de données qui ne sera plus partagé.
curl_getinfo()
Constantes Description
CURLINFO_APPCONNECT_TIME (int) Le temps en secondes qu'il a fallu pour établir la connexion SSL/SSH avec l'hôte distant
CURLINFO_APPCONNECT_TIME_T (int) Le temps en microsecondes qu'il a fallu pour établir la connexion SSL/SSH avec l'hôte distant. Disponible depuis PHP 7.3.0 et cURL 7.61.0
CURLINFO_CAINFO (int) Chemin natif du certificat CA. Disponible depuis PHP 8.3.0 et cURL 7.84.0
CURLINFO_CAPATH (int) Chemin natif du CA. Disponible depuis PHP 8.3.0 et cURL 7.84.0
CURLINFO_CERTINFO (int) La chaine du certerficat TLS. TLS certificate chain
CURLINFO_CONDITION_UNMET (int) Informations sur la condition temporelle non remplie
CURLINFO_CONNECT_TIME (int) Le temps en seconde qu'il a fallu pour établir la connexion
CURLINFO_CONNECT_TIME_T (int) Le temps total pris, en microsecondes, depuis le début jusqu'à ce que la connexion avec l'hôte distant (ou le proxy) soit complétée. Disponible depuis PHP 7.3.0 et cURL 7.61.0
CURLINFO_CONTENT_LENGTH_DOWNLOAD (int) La longueur du contenu téléchargé, lue depuis le champ Content-Length:
CURLINFO_CONTENT_LENGTH_DOWNLOAD_T (int) Le contenu de la longueur du téléchargement. C'est la valeur lue depuis le champ Content-Length:. -1 si la taille n'est pas connue. Disponible depuis PHP 7.3.0 et cURL 7.55.0
CURLINFO_CONTENT_LENGTH_UPLOAD (int) La taille spécifiée de l'envoi
CURLINFO_CONTENT_LENGTH_UPLOAD_T (int) La taille spécifiée de l'envoi. -1 si la taille n'est pas connue. Disponible depuis PHP 7.3.0 et cURL 7.55.0
CURLINFO_CONTENT_TYPE (int) Le Content-Type: du document demandé. NULL indique que le serveur n'a pas envoyé d'en-tête Content-Type: valide
CURLINFO_COOKIELIST (int) Les cookies connus
CURLINFO_EFFECTIVE_METHOD (int) Renvoie la dernière méthode HTTP utilisée.
CURLINFO_EFFECTIVE_URL (int) La dernière URL effective
CURLINFO_FILETIME (int) Le temps à distance du document récupéré, avec CURLOPT_FILETIME activé; si -1 est retourné, le temps du document est inconnu
CURLINFO_FILETIME_T (int) Le temps à distance du document récupéré (comme un horodatage Unix), une alternative à CURLINFO_FILETIME pour permettre aux systèmes avec des variables longues de 32 bits d'extraire des dates en dehors de la plage de temps de 32 bits. Disponible depuis PHP 7.3.0 et cURL 7.59.0
CURLINFO_FTP_ENTRY_PATH (int) Le chemin d'entrée sur le serveur FTP
CURLINFO_HEADER_OUT (int) La chaîne de requête envoyée. Pour que cela fonctionne, ajoutez l'option CURLINFO_HEADER_OUT au gestionnaire en appelant curl_setopt()
CURLINFO_HEADER_SIZE (int) La taille totale de toutes les en-têtes reçues
CURLINFO_HTTPAUTH_AVAIL (int) Le masque de bits indiquant la méthode d'authentification disponible(s) selon la réponse précédente
CURLINFO_HTTP_CODE (int) Le dernier code de réponse. À partir de cURL 7.10.8, c'est un alias hérité de CURLINFO_RESPONSE_CODE.
CURLINFO_HTTP_CONNECTCODE (int) Le code de réponse CONNECT
CURLINFO_HTTP_VERSION (int) La version utilisée dans la dernière connexion HTTP. La valeur de retour sera l'une des constantes CURL_HTTP_VERSION_* définies ou 0 si la version ne peut pas être déterminée. Disponible depuis PHP 7.3.0 et cURL 7.50.0
CURLINFO_LASTONE (int) La dernière valeur d'énumération dans l'énumération CURLINFO sous-jacente dans libcurl.
CURLINFO_LOCAL_IP (int) L'adresse IP locale (source) de la connexion la plus récente
CURLINFO_LOCAL_PORT (int) Le port (source) local de la connexion la plus récente
CURLINFO_NAMELOOKUP_TIME (int) Le temps en secondes jusqu'à ce que la résolution du nom soit complète
CURLINFO_NAMELOOKUP_TIME_T (int) Le temps en microsecondes jusqu'à ce que la résolution du nom soit complète. Disponible depuis PHP 7.3.0 et cURL 7.61.0
CURLINFO_NUM_CONNECTS (int) Le nombre de connexions que curl a dû créer pour effectuer le transfert précédent
CURLINFO_OS_ERRNO (int) Le numéro d'erreur de l'échec de connexion. Le numéro est spécifique au système d'exploitation et au système.
CURLINFO_PRETRANSFER_TIME (int) Le temps en seconde depuis le début jusqu'à juste avant que le transfert de fichier ne commence
CURLINFO_PRETRANSFER_TIME_T (int) Le temps pris depuis le début jusqu'à ce que le transfert de fichier ne commence, en microsecondes. Disponible depuis PHP 7.3.0 et cURL 7.61.0
CURLINFO_PRIMARY_IP (int) L'adresse IP de la connexion la plus récente
CURLINFO_PRIMARY_PORT (int) Le port de destination de la connexion la plus récente
CURLINFO_PRIVATE (int) Les données privées associées à cette connexion cURL, précédemment définies avec l'option CURLOPT_PRIVATE de curl_setopt()
CURLINFO_PROTOCOL (int) Le protocol utilisé dans la dernière connexion HTTP. La valeur de retour sera exactement une des valeurs CURLPROTO_*. Disponible depuis PHP 7.3.0 et cURL 7.52.0
CURLINFO_PROXYAUTH_AVAIL (int) Le masque de bits indiquant la méthode d'authentification de proxy disponible selon la réponse précédente
CURLINFO_PROXY_ERROR (int) Le détail du code d'erreur (SOCKS) proxy lorsque le transfert le plus récent a retourné une erreur CURLE_PROXY. La valeur retournée sera exactement une des valeurs CURLPX_*. Le code d'erreur sera CURLPX_OK si aucun code de réponse n'était disponible. Disponible depuis PHP 8.2.0 et cURL 7.73.0
CURLINFO_PROXY_SSL_VERIFYRESULT (int) Le résultat de la vérification du certificat qui a été demandée (en utilisant l'option CURLOPT_PROXY_SSL_VERIFYPEER). Utilisé uniquement pour les proxies HTTPS. Disponible depuis PHP 7.3.0 et cURL 7.52.0
CURLINFO_REDIRECT_COUNT (int) Le nombre de redirections, avec l'option CURLOPT_FOLLOWLOCATION activée
CURLINFO_REDIRECT_TIME (int) Le temps en secondes de toutes les étapes de redirection avant que la transaction finale ne commence, avec l'option CURLOPT_FOLLOWLOCATION activée
CURLINFO_REDIRECT_TIME_T (int) Le temps total, en microsecondes, qu'il a fallu pour toutes les étapes de redirection, y compris la recherche de nom, la connexion, le pré-transfert et le transfert avant que la transaction finale ne commence. Disponible depuis PHP 7.3.0 et cURL 7.61.0
CURLINFO_REDIRECT_URL (int) avec l'option CURLOPT_FOLLOWLOCATION désactivée: URL de redirection trouvée dans la dernière transaction, qui devrait être demandée manuellement ensuite. Avec l'option CURLOPT_FOLLOWLOCATION activée: c'est vide. L'URL de redirection dans ce cas est disponible dans CURLINFO_EFFECTIVE_URL
CURLINFO_REFERER (int) L'en-tête Referer. Disponible depuis PHP 8.2.0 et cURL 7.76.0
CURLINFO_REQUEST_SIZE (int) La taille totale des requêtes émises, actuellement uniquement pour les requêtes HTTP
CURLINFO_RESPONSE_CODE (int) Le dernier code de réponse. Disponible depuis cURL 7.10.8
CURLINFO_RETRY_AFTER (int) Les informations de l'en-tête Retry-After:, ou zéro s'il n'y avait pas d'en-tête valide. Disponible depuis PHP 8.2.0 et cURL 7.66.0
CURLINFO_RTSP_CLIENT_CSEQ (int) La prochaine séquence CSeq du client RTSP
CURLINFO_RTSP_CSEQ_RECV (int) La réception CSeq RTSP récente
CURLINFO_RTSP_SERVER_CSEQ (int) La prochaine séquence CSeq du serveur RTSP
CURLINFO_RTSP_SESSION_ID (int) L'ID de session RTSP
CURLINFO_SCHEME (int) Le schéma d'URL utilisé pour la connexion la plus récente. Disponible depuis PHP 7.3.0 et cURL 7.52.0
CURLINFO_SIZE_DOWNLOAD (int) Le nombre total d'octets téléchargés
CURLINFO_SIZE_DOWNLOAD_T (int) Le nombre total d'octets téléchargés. Le nombre est uniquement pour le dernier transfert et sera à nouveau réinitialisé pour chaque nouveau transfert. Disponible depuis PHP 7.3.0 et cURL 7.50.0
CURLINFO_SIZE_UPLOAD (int) Le nombre total d'octets téléchargés
CURLINFO_SIZE_UPLOAD_T (int) Le nombre total d'octets téléchargés. Disponible depuis PHP 7.3.0 et cURL 7.50.0
CURLINFO_SPEED_DOWNLOAD (int) La vitesse moyenne de téléchargement
CURLINFO_SPEED_DOWNLOAD_T (int) La vitesse moyenne de téléchargement en octets/seconde que curl a mesurée pour le téléchargement complet. Disponible depuis PHP 7.3.0 et cURL 7.50.0
CURLINFO_SPEED_UPLOAD (int) La vitesse moyenne de téléversement
CURLINFO_SPEED_UPLOAD_T (int) La vitesse moyenne de téléversement en octets/seconde que curl a mesurée pour le téléversement complet. Disponible depuis PHP 7.3.0 et cURL 7.50.0
CURLINFO_SSL_ENGINES (int) Les moteurs de cryptographie OpenSSL pris en charge
CURLINFO_SSL_VERIFYRESULT (int) Le résultat de la vérification du certificat SSL demandée en définissant CURLOPT_SSL_VERIFYPEER
CURLINFO_STARTTRANSFER_TIME (int) Le temps en seconde jusqu'à ce que le premier octet soit sur le point d'être transféré
CURLINFO_STARTTRANSFER_TIME_T (int) Le temps, en microsecondes, qu'il a fallu depuis le début jusqu'à ce que le premier octet soit reçu. Disponible depuis PHP 7.3.0 et cURL 7.61.0
CURLINFO_TOTAL_TIME (int) Le temps total en secondes pour le dernier transfert
CURLINFO_TOTAL_TIME_T (int) Le temps total en microsecondes pour le dernier transfert, y compris la résolution du nom, la connexion TCP, etc. Disponible depuis PHP 7.3.0 et cURL 7.61.0
curl_multi_setopt()
Constantes Description
CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE (int) Spécifie le seuil de longueur de morceau pour le pipelining en octets. Disponible à partir de PHP 7.0.7 et cURL 7.30.0
CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE (int) Spécifie le seuil de taille de pénalité de pipelining en octets. Disponible à partir de PHP 7.0.7 et cURL 7.30.0
CURLMOPT_MAXCONNECTS (int) Spécifie la quantité maximale de connexions simultanément ouvertes que libcurl peut mettre en cache. Par défaut, la taille sera agrandie pour contenir quatre fois le nombre de gestionnaires ajoutées via curl_multi_add_handle(). Lorsque le cache est plein, cURL ferme la plus ancienne dans le cache pour empêcher le nombre de connexions ouvertes d'augmenter. Disponible à partir de cURL 7.16.3.
CURLMOPT_MAX_CONCURRENT_STREAMS (int) Spécifie le nombre maximal de stream simultanés pour les connexions que cURL devrait supporter sur les connexions utilisant HTTP/2. Les valeurs valides vont de 1 à 2147483647 (2^31 - 1). La valeur passée ici serait honorée en fonction d'autres propriétés des ressources système. Par défaut, c'est 100. Disponible à partir de PHP 8.2.0 et cURL 7.67.0.
CURLMOPT_MAX_HOST_CONNECTIONS (int) Spécifie le nombre maximal de connexions à un seul hôte. Disponible à partir de PHP 7.0.7 et cURL 7.30.0
CURLMOPT_MAX_PIPELINE_LENGTH (int) Spécifie le nombre maximal de requêtes dans un pipeline. Disponible à partir de PHP 7.0.7 et cURL 7.30.0
CURLMOPT_MAX_TOTAL_CONNECTIONS (int) Spécifie le nombre maximal de connexions simultanément ouvertes. Disponible à partir de PHP 7.0.7 et cURL 7.30.0
CURLMOPT_PIPELINING (int) Passer 1 pour activer ou 0 pour désactiver. Activer le pipelining sur un gestionnaire multiple fera qu'elle tentera de réaliser le pipelining HTTP autant que possible pour les transferts utilisant ce gestionnaire. Cela signifie qu'ajouter une deuxième requête qui peut utiliser une connexion déjà existante "pipe" la deuxième requête sur la même connexion. A partir de cURL 7.43.0, la valeur est un masque de bits, et passer 2 tentera de multiplexer le nouveau transfert sur une connexion HTTP/2 existante. Passer 3 indique à cURL de demander le pipelining et le multiplexage indépendamment l'un de l'autre. A partir de cURL 7.62.0, définir le bit de pipelining n'a aucun effet. Au lieu de littéraux entiers, les constantes CURLPIPE_* peuvent également être utilisées. Disponible à partir de cURL 7.16.0.
CURLMOPT_PUSHFUNCTION (int)

Passer une fermeture qui sera enregistré pour gérer les poussées du serveur et doit avoir la signature suivante:

pushfunction(resource $parent_ch, resource $pushed_ch, array $headers): int
parent_ch
Le gestionnaire parent cURL (la requête que le client a faite).
pushed_ch
Un nouveau gestionnaire cURL pour la requête poussée.
headers
Les en-têtes de la promesse de poussée.
La fonction push doit retourner soit CURL_PUSH_OK si elle peut gérer la poussée, ou CURL_PUSH_DENY pour la rejeter. Disponible à partir de PHP 7.1.0 et cURL 7.44.0

Constantes de protocole cURL
Constantes Description
CURLPROTO_ALL (int)
CURLPROTO_DICT (int)
CURLPROTO_FILE (int)
CURLPROTO_FTP (int)
CURLPROTO_FTPS (int)
CURLPROTO_GOPHER (int)
CURLPROTO_HTTP (int)
CURLPROTO_HTTPS (int)
CURLPROTO_IMAP (int)
CURLPROTO_IMAPS (int)
CURLPROTO_LDAP (int)
CURLPROTO_LDAPS (int)
CURLPROTO_MQTT (int) Disponible à partir de PHP 8.2.0 et cURL 7.71.0.
CURLPROTO_POP3 (int)
CURLPROTO_POP3S (int)
CURLPROTO_RTMP (int)
CURLPROTO_RTMPE (int)
CURLPROTO_RTMPS (int)
CURLPROTO_RTMPT (int)
CURLPROTO_RTMPTE (int)
CURLPROTO_RTMPTS (int)
CURLPROTO_RTSP (int)
CURLPROTO_SCP (int)
CURLPROTO_SFTP (int)
CURLPROTO_SMB (int) Disponible à partir de PHP 7.0.7 et cURL 7.40.0.
CURLPROTO_SMBS (int) Disponible à partir de PHP 7.0.7 et cURL 7.40.0.
CURLPROTO_SMTP (int)
CURLPROTO_SMTPS (int)
CURLPROTO_TELNET (int)
CURLPROTO_TFTP (int)
Constantes d'erreurs cURL
Constantes Description
CURLE_ABORTED_BY_CALLBACK (int) Abandonné par la fonction de rappel. Une function de rappel a renvoyé "abort" à libcurl.
CURLE_BAD_CALLING_ORDER (int)
CURLE_BAD_CONTENT_ENCODING (int) Encodage de contenu non reconnu.
CURLE_BAD_DOWNLOAD_RESUME (int) Le téléchargement n'a pas pu être repris car l'offset spécifié était en dehors des limites du fichier.
CURLE_BAD_FUNCTION_ARGUMENT (int) Une fonction a été appelée avec un mauvais paramètre.
CURLE_BAD_PASSWORD_ENTERED (int)
CURLE_COULDNT_CONNECT (int) Echec de la connexion à l'hôte ou au proxy.
CURLE_COULDNT_RESOLVE_HOST (int) Résolution de l'hôte impossible. L'hôte distant n'a pas pu être résolu.
CURLE_COULDNT_RESOLVE_PROXY (int) Résolution du proxy impossible. Le proxy donné n'a pas pu être résolu.
CURLE_FAILED_INIT (int) Le code d'initialisation a échoué. Il s'agit probablement d'une erreur interne ou d'un problème de ressource où quelque chose de fondamental n'a pas pu être fait au moment de l'initialisation.
CURLE_FILESIZE_EXCEEDED (int) Le maximum de taille de fichier a été dépassé.
CURLE_FILE_COULDNT_READ_FILE (int) Un fichier donné avec FILE:// n'a pas pu être ouvert. Le plus probablement parce que le chemin du fichier ne correspond pas à un fichier existant ou en raison du manque de permissions de fichier appropriées.
CURLE_FTP_ACCESS_DENIED (int)
CURLE_FTP_BAD_DOWNLOAD_RESUME (int)
CURLE_FTP_CANT_GET_HOST (int) Une erreur interne s'est produite lors de la recherche de l'hôte utilisé pour la nouvelle connexion.
CURLE_FTP_CANT_RECONNECT (int)
CURLE_FTP_COULDNT_GET_SIZE (int)
CURLE_FTP_COULDNT_RETR_FILE (int) Ceci était soit une réponse inattendue à une commande 'RETR' ou un transfert de zéro octet complet.
CURLE_FTP_COULDNT_SET_ASCII (int)
CURLE_FTP_COULDNT_SET_BINARY (int)
CURLE_FTP_COULDNT_STOR_FILE (int)
CURLE_FTP_COULDNT_USE_REST (int) La commande FTP REST a retourné une erreur. Cela ne devrait jamais se produire si le serveur est sain.
CURLE_FTP_PARTIAL_FILE (int)
CURLE_FTP_PORT_FAILED (int) La commande FTP PORT a retourné une erreur. Cela se produit principalement lorsque l'adresse spécifiée pour libcurl n'est pas suffisamment bonne. Voir CURLOPT_FTPPORT.
CURLE_FTP_QUOTE_ERROR (int)
CURLE_FTP_SSL_FAILED (int)
CURLE_FTP_USER_PASSWORD_INCORRECT (int)
CURLE_FTP_WEIRD_227_FORMAT (int) Les serveurs FTP renvoient une ligne 227 en réponse à une commande PASV. Si libcurl échoue à analyser cette ligne, ce code de retour est renvoyé.
CURLE_FTP_WEIRD_PASS_REPLY (int) Après avoir envoyé le mot de passe FTP au serveur, libcurl attend une réponse appropriée. Ce code d'erreur indique qu'un code inattendu a été renvoyé.
CURLE_FTP_WEIRD_PASV_REPLY (int) Libcurl n'a pas réussi à obtenir un résultat sensé du serveur en réponse à une commande PASV ou EPSV. Le serveur est défectueux.
CURLE_FTP_WEIRD_SERVER_REPLY (int) Le serveur a renvoyé des données que libcurl n'a pas pu analyser. Ce code d'erreur est connu sous le nom de CURLE_WEIRD_SERVER_REPLY à partir de cURL 7.51.0.
CURLE_FTP_WEIRD_USER_REPLY (int)
CURLE_FTP_WRITE_ERROR (int)
CURLE_FUNCTION_NOT_FOUND (int) La function n'a pas été trouvée. Une function zlib requise n'a pas été trouvée.
CURLE_GOT_NOTHING (int) Rien n'a été renvoyé par le serveur, et dans les circonstances, ne rien recevoir est considéré comme une erreur.
CURLE_HTTP_NOT_FOUND (int)
CURLE_HTTP_PORT_FAILED (int)
CURLE_HTTP_POST_ERROR (int) C'est une erreur étrange qui se produit principalement en raison d'une confusion interne.
CURLE_HTTP_RANGE_ERROR (int)
CURLE_HTTP_RETURNED_ERROR (int) Cela est renvoyé si CURLOPT_FAILONERROR est défini à true et que le serveur HTTP renvoie un code d'erreur supérieur ou égal à 400.
CURLE_LDAP_CANNOT_BIND (int) LDAP ne peut pas se lier. L'opération de liaison LDAP a échoué.
CURLE_LDAP_INVALID_URL (int)
CURLE_LDAP_SEARCH_FAILED (int) La recherche LDAP a échoué.
CURLE_LIBRARY_NOT_FOUND (int)
CURLE_MALFORMAT_USER (int)
CURLE_OBSOLETE (int)
CURLE_OK (int) Tout est bien. Procédez comme d'habitude.
CURLE_OPERATION_TIMEDOUT (int) Opération expirée. La période de temps spécifiée a été atteinte selon les conditions.
CURLE_OPERATION_TIMEOUTED (int)
CURLE_OUT_OF_MEMORY (int) Une demande d'allocation de mémoire a échoué.
CURLE_PARTIAL_FILE (int) Un transfert de fichier a été plus court ou plus long que prévu. Cela se produit lorsque le serveur signale d'abord une taille de transfert attendue, puis fournit des données qui ne correspondent pas à la taille précédemment donnée.
CURLE_PROXY (int) Erreur de connexion au proxy. CURLINFO_PROXY_ERROR fournit des détails supplémentaires sur le problème spécifique. Disponible à partir de PHP 8.2.0 et cURL 7.73.0
CURLE_READ_ERROR (int) Il y a eu un problème lors de la lecture d'un fichier local ou une erreur renvoyée par la fonction de rappel de lecture.
CURLE_RECV_ERROR (int) Echec de la réception des données réseau.
CURLE_SEND_ERROR (int) Echec de l'envoi des données réseau.
CURLE_SHARE_IN_USE (int)
CURLE_SSH (int) Une erreur non spécifiée s'est produite pendant la session SSH. Disponible à partir de cURL 7.16.1.
CURLE_SSL_CACERT (int)
CURLE_SSL_CACERT_BADFILE (int) Problème de lecture du certificat SSL CA.
CURLE_SSL_CERTPROBLEM (int) Probleme avec le client de certificat local.
CURLE_SSL_CIPHER (int) Impossible d'utiliser le chiffrement spécifié.
CURLE_SSL_CONNECT_ERROR (int) Un problème s'est produit quelque part dans la poignée SSL/TLS. La lecture du message dans le tampon d'erreur fournit plus de détails sur le problème. Pourrait être des certificats (formats de fichiers, chemins, autorisations), des mots de passe et d'autres.
CURLE_SSL_ENGINE_NOTFOUND (int) Le moteur crypto spécifié n'a pas été trouvé.
CURLE_SSL_ENGINE_SETFAILED (int) Echec de la définition du moteur crypto sélectionné comme moteur par défaut.
CURLE_SSL_PEER_CERTIFICATE (int)
CURLE_SSL_PINNEDPUBKEYNOTMATCH (int) Echec de correspondance de la clé épinglée spécifiée avec CURLOPT_PINNEDPUBLICKEY.
CURLE_TELNET_OPTION_SYNTAX (int)
CURLE_TOO_MANY_REDIRECTS (int) Trop de redirections. Lors du suivi des redirections, libcurl a atteint le nombre maximum. La limite peut être définie avec CURLOPT_MAXREDIRS.
CURLE_UNKNOWN_TELNET_OPTION (int)
CURLE_UNSUPPORTED_PROTOCOL (int) L'URL passée à libcurl utilisait un protocole que libcurl ne supporte pas. Le problème pourrait être une option de compilation qui n'a pas été utilisée, une chaîne de protocole mal orthographiée ou simplement un protocole pour lequel libcurl n'a pas de code.
CURLE_URL_MALFORMAT (int) L'URL n'était pas correctement formatée.
CURLE_URL_MALFORMAT_USER (int)
CURLE_WEIRD_SERVER_REPLY (int) Le serveur a renvoyé des données que libcurl n'a pas pu analyser. Ce code d'erreur était connu sous le nom de CURLE_FTP_WEIRD_SERVER_REPLY avant cURL 7.51.0. Disponible à partir de PHP 7.3.0 et cURL 7.51.0
CURLE_WRITE_ERROR (int) Une erreur s'est produite lors de l'écriture des données reçues dans un fichier local, ou une erreur a été renvoyée à libcurl à partir d'une fonction de rappel d'écriture.
curl_multi_* status constants
Constantes Description
CURLM_ADDED_ALREADY (int) Un gestionnaire facile déjà ajoutée à un gestionnaire multiple a été tentée d'être ajoutée une deuxième fois. Disponible à partir de cURL 7.32.1
CURLM_BAD_EASY_HANDLE (int) Un gestionnaire facile n'était pas bonne/valide. Cela pourrait signifier qu'il ne s'agit pas d'un gestionnaire facile du tout, ou éventuellement que le gestionnaire est déjà utilisée par cette ou un autre gestionnaire multiple.
CURLM_BAD_HANDLE (int) Le gestionnaire passé n'est pas un gestionnaire multiple valide.
CURLM_CALL_MULTI_PERFORM (int) Depuis cURL 7.20.0, cette constante n'est pas utilisée. Avant cURL 7.20.0, ce statut pouvait être retourné par curl_multi_exec() lorsque curl_multi_select() ou une fonction similaire était appelée avant qu'elle ne retourne une autre constante.
CURLM_INTERNAL_ERROR (int) Erreur interne de libcurl.
CURLM_OK (int) Aucune erreur.
CURLM_OUT_OF_MEMORY (int) Pas assez de mémoire lors du traitement des gestionnaires multiples.
curl_pause()
Constantes Description
CURLPAUSE_ALL (int) Met en pause l'envoi et la réception de données. Disponible à partir de cURL 7.18.0.
CURLPAUSE_CONT (int) Reprend l'envoi et la réception de données. Disponible à partir de cURL 7.18.0.
CURLPAUSE_RECV (int) Met en pause la réception de données. Disponible à partir de cURL 7.18.0.
CURLPAUSE_RECV_CONT (int) Reprend la réception de données. Disponible à partir de cURL 7.18.0.
CURLPAUSE_SEND (int) Met en pause l'envoi de données. Disponible à partir de cURL 7.18.0.
CURLPAUSE_SEND_CONT (int) Reprend l'envoi de données. Disponible à partir de cURL 7.18.0.
add a note

User Contributed Notes 5 notes

up
29
nimasdj [AT] yahoo [DOT] com
9 years ago
I hope this would be useful to convert error codes:

<?php
$curl_errno
= array(
1 => "CURLE_UNSUPPORTED_PROTOCOL",
2 => "CURLE_FAILED_INIT",
3 => "CURLE_URL_MALFORMAT",
4 => "CURLE_URL_MALFORMAT_USER",
5 => "CURLE_COULDNT_RESOLVE_PROXY",
6 => "CURLE_COULDNT_RESOLVE_HOST",
7 => "CURLE_COULDNT_CONNECT",
8 => "CURLE_FTP_WEIRD_SERVER_REPLY",
9 => "CURLE_FTP_ACCESS_DENIED",
10 => "CURLE_FTP_USER_PASSWORD_INCORRECT",
11 => "CURLE_FTP_WEIRD_PASS_REPLY",
12 => "CURLE_FTP_WEIRD_USER_REPLY",
13 => "CURLE_FTP_WEIRD_PASV_REPLY",
14 => "CURLE_FTP_WEIRD_227_FORMAT",
15 => "CURLE_FTP_CANT_GET_HOST",
16 => "CURLE_FTP_CANT_RECONNECT",
17 => "CURLE_FTP_COULDNT_SET_BINARY",
18 => "CURLE_FTP_PARTIAL_FILE or CURLE_PARTIAL_FILE",
19 => "CURLE_FTP_COULDNT_RETR_FILE",
20 => "CURLE_FTP_WRITE_ERROR",
21 => "CURLE_FTP_QUOTE_ERROR",
22 => "CURLE_HTTP_NOT_FOUND or CURLE_HTTP_RETURNED_ERROR",
23 => "CURLE_WRITE_ERROR",
24 => "CURLE_MALFORMAT_USER",
25 => "CURLE_FTP_COULDNT_STOR_FILE",
26 => "CURLE_READ_ERROR",
27 => "CURLE_OUT_OF_MEMORY",
28 => "CURLE_OPERATION_TIMEDOUT or CURLE_OPERATION_TIMEOUTED",
29 => "CURLE_FTP_COULDNT_SET_ASCII",
30 => "CURLE_FTP_PORT_FAILED",
31 => "CURLE_FTP_COULDNT_USE_REST",
32 => "CURLE_FTP_COULDNT_GET_SIZE",
33 => "CURLE_HTTP_RANGE_ERROR",
34 => "CURLE_HTTP_POST_ERROR",
35 => "CURLE_SSL_CONNECT_ERROR",
36 => "CURLE_BAD_DOWNLOAD_RESUME or CURLE_FTP_BAD_DOWNLOAD_RESUME",
37 => "CURLE_FILE_COULDNT_READ_FILE",
38 => "CURLE_LDAP_CANNOT_BIND",
39 => "CURLE_LDAP_SEARCH_FAILED",
40 => "CURLE_LIBRARY_NOT_FOUND",
41 => "CURLE_FUNCTION_NOT_FOUND",
42 => "CURLE_ABORTED_BY_CALLBACK",
43 => "CURLE_BAD_FUNCTION_ARGUMENT",
44 => "CURLE_BAD_CALLING_ORDER",
45 => "CURLE_HTTP_PORT_FAILED",
46 => "CURLE_BAD_PASSWORD_ENTERED",
47 => "CURLE_TOO_MANY_REDIRECTS",
48 => "CURLE_UNKNOWN_TELNET_OPTION",
49 => "CURLE_TELNET_OPTION_SYNTAX",
50 => "CURLE_OBSOLETE",
51 => "CURLE_SSL_PEER_CERTIFICATE",
52 => "CURLE_GOT_NOTHING",
53 => "CURLE_SSL_ENGINE_NOTFOUND",
54 => "CURLE_SSL_ENGINE_SETFAILED",
55 => "CURLE_SEND_ERROR",
56 => "CURLE_RECV_ERROR",
57 => "CURLE_SHARE_IN_USE",
58 => "CURLE_SSL_CERTPROBLEM",
59 => "CURLE_SSL_CIPHER",
60 => "CURLE_SSL_CACERT",
61 => "CURLE_BAD_CONTENT_ENCODING",
62 => "CURLE_LDAP_INVALID_URL",
63 => "CURLE_FILESIZE_EXCEEDED",
64 => "CURLE_FTP_SSL_FAILED",
79 => "CURLE_SSH"
);
?>
up
9
uramihsayibok, gmail, com
9 years ago
Regarding CURLE_OPERATION_TIMEDOUT vs. CURLE_OPERATION_TIMEOUTED:

Originally cURL had the constant named TIMEOUTED (read: "timeout-ed"). This was changed[1] in 2007 and v7.17.0 to be TIMEDOUT (read: "timed out") and the old constant kept in place as an alias.

PHP started off using TIMEOUTED as well. The TIMEDOUT constant was added[2] in 2012 and v5.5.0 and the old constant was *kept in place*.

If you ask me, the TIMEDOUT constant reads more nicely (not to mention is technically the correct one to use) and as long as you're using PHP 5.5+ then it is available. If you have to support older versions then I suggest you keep using the new constant and add a polyfill like

<?php
if (version_compare(PHP_VERSION, "5.5.0", "<")) {
define("CURLE_OPERATION_TIMEDOUT", CURLE_OPERATION_TIMEOUTED);
}
?>

or

<?php
// PHP <5.5.0
defined("CURLE_OPERATION_TIMEDOUT") || define("CURLE_OPERATION_TIMEDOUT", CURLE_OPERATION_TIMEOUTED);
?>

to be removed once you stop supporting them.

[1] https://github.com/bagder/curl/commit/9f44a95522162c0f4a61093efe1bf1f58b087358#diff-d8c6cb80505e0f7d5e27fca2a682aa34L119
[2] https://github.com/php/php-src/commit/9ab45d3edbafa3ee751472c3f8d1fb3f51f38cf1#diff-ac978e3de205f1d14eb960e0eb15ef24R723
up
17
s dot coletta at unidata dot it
14 years ago
Beware of CURLE_* constants!

On the official site:

http://curl.haxx.se/libcurl/c/libcurl-errors.html

some constants are different, some missing compared to the PHP implementation.

Some examples:

in PHP the curl error number 28 is called

CURLE_OPERATION_TIMEOUTED

while in the official site is:

CURLE_OPERATION_TIMEDOUT

So if you use the second, it won't march the error 28 because in PHP it is not defined that way.

The same is for these:

CURLE_HTTP_RETURNED_ERROR
CURLE_UPLOAD_FAILED
CURLE_INTERFACE_FAILED
CURLE_SSL_CERTPROBLEM
CURLE_SEND_FAIL_REWIND
CURLE_LOGIN_DENIED
CURLE_AGAIN

that are in someway named differently or missing from PHP.
up
7
Ron
17 years ago
<?
/*
* Author: Ron
* Released: August 4, 2007
* Description: An example of the disguise_curl() function in order to grab contents from a website while remaining fully camouflaged by using a fake user agent and fake headers.
*/

$url = 'http://www.ericgiguere.com/tools/http-header-viewer.html';

// disguises the curl using fake headers and a fake user agent.
function disguise_curl($url)
{
$curl = curl_init();

// Setup headers - I used the same headers from Firefox version 2.0.0.6
// below was split up because php.net said the line was too long. :/
$header[0] = "Accept: text/xml,application/xml,application/xhtml+xml,";
$header[0] .= "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
$header[] = "Cache-Control: max-age=0";
$header[] = "Connection: keep-alive";
$header[] = "Keep-Alive: 300";
$header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
$header[] = "Accept-Language: en-us,en;q=0.5";
$header[] = "Pragma: "; // browsers keep this blank.

curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_USERAGENT, 'Googlebot/2.1 (+http://www.google.com/bot.html)');
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_REFERER, 'http://www.google.com');
curl_setopt($curl, CURLOPT_ENCODING, 'gzip,deflate');
curl_setopt($curl, CURLOPT_AUTOREFERER, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_TIMEOUT, 10);

$html = curl_exec($curl); // execute the curl command
curl_close($curl); // close the connection

return $html; // and finally, return $html
}

// uses the function and displays the text off the website
$text = disguise_curl($url);
echo $text;
?>

~Ron
up
0
jrschlosser
6 years ago
In PHP version 7.1.11 there is also constants for HTTP/2 :
CURL_VERSION_HTTP2 = 65536 (1 << 16)
CURL_HTTP_VERSION_2_0 = 3

I don't know the first version of PHP that defines it.
To Top