PHP Conference Kansai 2025

Constantes predefinidas

Estas constantes están definidas por esta extensión y estarán disponibles sólo cuando la extensión haya sido compilada con PHP, o bien sea cargada dinámicamente en ejecución.

Las descripciones así como los usos de estas constantes se describen en la documentación de las funciones curl_setopt(), curl_multi_setopt() y curl_getinfo().

Constantes Descripción
CURLALTSVC_H1 (int) Disponible a partir de PHP 8.2.0 y cURL 7.64.1.
CURLALTSVC_H2 (int) Disponible a partir de PHP 8.2.0 y cURL 7.64.1.
CURLALTSVC_H3 (int) Disponible a partir de PHP 8.2.0 y cURL 7.64.1.
CURLALTSVC_READONLYFILE (int) Disponible a partir de PHP 8.2.0 y cURL 7.64.1.
CURLAUTH_ANY (int)
CURLAUTH_ANYSAFE (int)
CURLAUTH_AWS_SIGV4 (int) Disponible a partir de PHP 8.2.0 y cURL 7.75.0.
CURLAUTH_BASIC (int)
CURLAUTH_BEARER (int) Disponible a partir de PHP 7.3.0 y cURL 7.61.0.
CURLAUTH_DIGEST (int)
CURLAUTH_DIGEST_IE (int) Utilizar la autenticación HTTP Digest con un navegador IE. Disponible a partir de cURL 7.19.3.
CURLAUTH_GSSAPI (int) Disponible a partir de PHP 7.3.0 y cURL 7.54.1
CURLAUTH_GSSNEGOTIATE (int)
CURLAUTH_NEGOTIATE (int) Disponible a partir de PHP 7.3.0 y cURL 7.61.0.
CURLAUTH_NONE (int) Disponible a partir de cURL 7.10.6.
CURLAUTH_NTLM (int)
CURLAUTH_NTLM_WB (int) Disponible a partir de PHP 7.0.7 y cURL 7.22.0
CURLAUTH_ONLY (int) Este es un símbolo meta. Colocar este valor CON un solo valor de autenticación específico para forzar a libcurl a verificar la autenticación no restringida y si no, solo este algoritmo de autenticación es aceptable. Disponible a partir de cURL 7.21.3.
CURLFTPAUTH_DEFAULT (int)
CURLFTPAUTH_SSL (int)
CURLFTPAUTH_TLS (int)
CURLFTPMETHOD_DEFAULT (int) Disponible a partir de PHP 8.2.0 y cURL 7.15.3.
CURLFTPMETHOD_MULTICWD (int) Realiza una sola operación CWD para cada parte del camino en la URL dada. Disponible a partir de cURL 7.15.3.
CURLFTPMETHOD_NOCWD (int) libcurl no realiza CWD en absoluto. libcurl realiza SIZE, RETR, STOR etc. y devuelve un camino completo al servidor para todas estas comandas. Disponible a partir de cURL 7.15.3.
CURLFTPMETHOD_SINGLECWD (int) libcurl realiza un CWD con el directorio objetivo completo luego opera sobre el fichero como en el caso multicwd. Disponible a partir de cURL 7.15.3.
CURLFTPSSL_ALL (int)
CURLFTPSSL_CCC_ACTIVE (int) Inicia el cierre de la conexión y espera una respuesta. Disponible a partir de cURL 7.16.2.
CURLFTPSSL_CCC_NONE (int) No intenta usar CCC (Clear Command Channel). Disponible a partir de cURL 7.16.2.
CURLFTPSSL_CCC_PASSIVE (int) No inicia el cierre de la conexión, pero espera que el servidor lo haga. No envía respuesta. Disponible a partir de cURL 7.16.2.
CURLFTPSSL_CONTROL (int)
CURLFTPSSL_NONE (int)
CURLFTPSSL_TRY (int)
CURLFTP_CREATE_DIR (int) Disponible a partir de PHP 7.0.7 y cURL 7.19.3
CURLFTP_CREATE_DIR_NONE (int) Disponible a partir de PHP 7.0.7 y cURL 7.19.3
CURLFTP_CREATE_DIR_RETRY (int) Disponible a partir de PHP 7.0.7 y cURL 7.19.3
CURLGSSAPI_DELEGATION_FLAG (int) Permite la delegación incondicional de las credenciales GSSAPI. Disponible a partir de cURL 7.22.0.
CURLGSSAPI_DELEGATION_POLICY_FLAG (int) Delega únicamente si el flag OK-AS-DELEGATE está definido en el ticket de servicio si esta funcionalidad es soportada por la implementación GSS-API y que la definición de GSS_C_DELEG_POLICY_FLAG estaba disponible en la compilación. Disponible a partir de cURL 7.22.0.
CURLHEADER_SEPARATE (int) Disponible a partir de PHP 7.0.7 y cURL 7.37.0.
CURLHEADER_UNIFIED (int) Disponible a partir de PHP 7.0.7 y cURL 7.37.0.
CURLHSTS_ENABLE (int) Disponible a partir de PHP 8.2.0 y cURL 7.74.0
CURLHSTS_READONLYFILE (int) Disponible a partir de PHP 8.2.0 y cURL 7.74.0
CURLKHMATCH_LAST (int) Disponible a partir de PHP 8.3.0 y cURL 7.19.6
CURLKHMATCH_MISMATCH (int) Disponible a partir de PHP 8.3.0 y cURL 7.19.6
CURLKHMATCH_MISSING (int) Disponible a partir de PHP 8.3.0 y cURL 7.19.6
CURLKHMATCH_OK (int) Disponible a partir de PHP 8.3.0 y cURL 7.19.6
CURLMIMEOPT_FORMESCAPE (int) Disponible a partir de PHP 8.3.0 y cURL 7.81.0
CURLMSG_DONE (int)
CURLPIPE_HTTP1 (int) Disponible a partir de cURL 7.43.0.
CURLPIPE_MULTIPLEX (int) Disponible a partir de cURL 7.43.0.
CURLPIPE_NOTHING (int) Disponible a partir de cURL 7.43.0.
CURLPROXY_HTTP (int) Disponible a partir de cURL 7.10.
CURLPROXY_HTTPS (int) Disponible a partir de PHP 7.3.0 y cURL 7.52.0
CURLPROXY_HTTP_1_0 (int) Disponible a partir de PHP 7.0.7 y cURL 7.19.3
CURLPROXY_SOCKS4 (int) Disponible a partir de cURL 7.10.
CURLPROXY_SOCKS4A (int) Disponible a partir de cURL 7.18.0.
CURLPROXY_SOCKS5 (int) Disponible a partir de cURL 7.10.
CURLPROXY_SOCKS5_HOSTNAME (int) Disponible a partir de cURL 7.18.0.
CURLPX_BAD_ADDRESS_TYPE (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_BAD_VERSION (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_CLOSED (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_GSSAPI (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_GSSAPI_PERMSG (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_GSSAPI_PROTECTION (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_IDENTD (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_IDENTD_DIFFER (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_LONG_HOSTNAME (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_LONG_PASSWD (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_LONG_USER (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_NO_AUTH (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_OK (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_RECV_ADDRESS (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_RECV_AUTH (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_RECV_CONNECT (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_RECV_REQACK (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_REPLY_ADDRESS_TYPE_NOT_SUPPORTED (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_REPLY_COMMAND_NOT_SUPPORTED (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_REPLY_CONNECTION_REFUSED (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_REPLY_GENERAL_SERVER_FAILURE (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_REPLY_HOST_UNREACHABLE (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_REPLY_NETWORK_UNREACHABLE (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_REPLY_NOT_ALLOWED (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_REPLY_TTL_EXPIRED (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_REPLY_UNASSIGNED (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_REQUEST_FAILED (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_RESOLVE_HOST (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_SEND_AUTH (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_SEND_CONNECT (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_SEND_REQUEST (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_UNKNOWN_FAIL (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_UNKNOWN_MODE (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLPX_USER_REJECTED (int) Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLSSH_AUTH_AGENT (int) Disponible a partir de PHP 7.0.7 y cURL 7.28.0
CURLSSH_AUTH_ANY (int)
CURLSSH_AUTH_DEFAULT (int)
CURLSSH_AUTH_GSSAPI (int) Disponible a partir de PHP 7.3.0 y cURL 7.58.0
CURLSSH_AUTH_HOST (int)
CURLSSH_AUTH_KEYBOARD (int)
CURLSSH_AUTH_NONE (int)
CURLSSH_AUTH_PASSWORD (int)
CURLSSH_AUTH_PUBLICKEY (int)
CURLSSLOPT_ALLOW_BEAST (int) Disponible a partir de cURL 7.25.0
CURLSSLOPT_AUTO_CLIENT_CERT (int) Disponible a partir de PHP 8.2.0 y cURL 7.77.0
CURLSSLOPT_NATIVE_CA (int) Disponible a partir de PHP 8.2.0 y cURL 7.71.0
CURLSSLOPT_NO_PARTIALCHAIN (int) Disponible a partir de PHP 8.2.0 y cURL 7.68.0
CURLSSLOPT_NO_REVOKE (int) Disponible a partir de PHP 7.0.7 y cURL 7.44.0
CURLSSLOPT_REVOKE_BEST_EFFORT (int) Disponible a partir de PHP 8.2.0 y cURL 7.70.0
CURLUSESSL_ALL (int) Requiere SSL para todas las comunicaciones o falla con CURLE_USE_SSL_FAILED. Disponible a partir de cURL 7.17.0.
CURLUSESSL_CONTROL (int) Requiere SSL para la conexión de control o falla con CURLE_USE_SSL_FAILED. Disponible a partir de cURL 7.17.0.
CURLUSESSL_NONE (int) No intenta usar SSL. Disponible a partir de cURL 7.17.0.
CURLUSESSL_TRY (int) Intenta usar SSL, sino continúa normalmente. Es de notar que el servidor puede cerrar la conexión si la negociación falla. Disponible a partir de cURL 7.17.0.
CURLVERSION_NOW (int)
CURLWS_RAW_MODE (int) Disponible a partir de PHP 8.3.0 y cURL 7.86.0
CURL_FNMATCHFUNC_FAIL (int) Devolvido por la función de devolución de llamada de coincidencia de caracteres genéricos si una error ha ocurrido. Disponible a partir de cURL 7.21.0.
CURL_FNMATCHFUNC_MATCH (int) Devolvido por la función de devolución de llamada de coincidencia de caracteres genéricos si el patrón coincide con la cadena. Disponible a partir de cURL 7.21.0.
CURL_FNMATCHFUNC_NOMATCH (int) Devolvido por la función de devolución de llamada de coincidencia de caracteres genéricos si el patrón no coincide con la cadena. Disponible a partir de cURL 7.21.0.
CURL_HTTP_VERSION_1_0 (int)
CURL_HTTP_VERSION_1_1 (int)
CURL_HTTP_VERSION_2 (int) Disponible a partir de PHP 7.0.7 y cURL 7.43.0
CURL_HTTP_VERSION_2TLS (int) Disponible a partir de PHP 7.0.7 y cURL 7.47.0
CURL_HTTP_VERSION_2_0 (int) Disponible a partir de cURL 7.33.0
CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE (int) Disponible a partir de PHP 7.0.7 y cURL 7.49.0
CURL_HTTP_VERSION_3 (int) Disponible a partir de PHP 8.4.0 y cURL 7.66.0.
CURL_HTTP_VERSION_3ONLY (int) Disponible a partir de PHP 8.4.0 y cURL 7.88.0.
CURL_HTTP_VERSION_NONE (int)
CURL_IPRESOLVE_V4 (int) Utilizar únicamente direcciones IPv4 al establecer una conexión o al elegir una del pool de conexiones. Disponible a partir de cURL 7.10.8.
CURL_IPRESOLVE_V6 (int) Utilizar únicamente direcciones IPv6 al establecer una conexión o al elegir una del pool de conexiones. Disponible a partir de cURL 7.10.8.
CURL_IPRESOLVE_WHATEVER (int) Utilizar direcciones de todas las versiones IP permitidas por el sistema. Disponible a partir de cURL 7.10.8.
CURL_MAX_READ_SIZE (int) Disponible a partir de PHP 7.3.0 y cURL 7.53.0
CURL_NETRC_IGNORED (int)
CURL_NETRC_OPTIONAL (int)
CURL_NETRC_REQUIRED (int)
CURL_PUSH_DENY (int) Disponible a partir de PHP 7.1.0 y cURL 7.44.0
CURL_PUSH_OK (int) Disponible a partir de PHP 7.1.0 y cURL 7.44.0
CURL_READFUNC_PAUSE (int) Disponible a partir de cURL 7.18.0
CURL_REDIR_POST_301 (int) Disponible a partir de PHP 7.0.7 y cURL 7.18.2
CURL_REDIR_POST_302 (int) Disponible a partir de PHP 7.0.7 y cURL 7.18.2
CURL_REDIR_POST_303 (int) Disponible a partir de PHP 7.0.7 y cURL 7.25.1
CURL_REDIR_POST_ALL (int) Disponible a partir de PHP 7.0.7 y cURL 7.18.2
CURL_RTSPREQ_ANNOUNCE (int) Cuando enviado por un cliente, este método cambia la descripción de la sesión. ANNOUNCE actúa como un HTTP PUT o POST así como CURL_RTSPREQ_SET_PARAMETER. Disponible a partir de cURL 7.20.0.
CURL_RTSPREQ_DESCRIBE (int) Utilizado para obtener la descripción de bajo nivel de un flujo. La aplicación debe anotar los formatos que comprende en el encabezado Accept:. A menos que esté definido manualmente, libcurl añade automáticamente Accept: application/sdp. Los encabezados de condición temporal son añadidos a las peticiones DESCRIBE si la opción CURLOPT_TIMECONDITION es utilizada. Disponible a partir de cURL 7.20.0.
CURL_RTSPREQ_GET_PARAMETER (int) Recupera un parámetro del servidor. Por omisión, libcurl añade un encabezado Content-Type: text/parameters a todas las peticiones no vacías a menos que un encabezado personalizado esté definido. GET_PARAMETER actúa como un HTTP PUT o POST. Las aplicaciones que deseen enviar un mensaje de latido deben utilizar una petición GET_PARAMETER vacía. Disponible a partir de cURL 7.20.0.
CURL_RTSPREQ_OPTIONS (int) Utilizado para obtener las opciones de la sesión. Disponible a partir de cURL 7.20.0.
CURL_RTSPREQ_PAUSE (int) Envía un comando PAUSE al servidor. Utilizar la opción CURLOPT_RANGE con un solo valor para indicar cuándo el flujo debe ser detenido (por ejemplo npt=25). Disponible a partir de cURL 7.20.0.
CURL_RTSPREQ_PLAY (int) Envía un comando PLAY al servidor. Utilizar la opción CURLOPT_RANGE para modificar el tiempo de lectura (por ejemplo npt=10-15). Disponible a partir de cURL 7.20.0.
CURL_RTSPREQ_RECEIVE (int) Define el tipo de petición RTSP para recibir datos RTP entrelazados. Disponible a partir de cURL 7.20.0.
CURL_RTSPREQ_RECORD (int) Utilizado para decirle al servidor que grabe una sesión. Utilizar la opción CURLOPT_RANGE para modificar el tiempo de grabación. Disponible a partir de cURL 7.20.0.
CURL_RTSPREQ_SETUP (int) Utilizado para inicializar la capa de transporte para la sesión. Disponible a partir de cURL 7.20.0.
CURL_RTSPREQ_SET_PARAMETER (int) Define un parámetro en el servidor. Disponible a partir de cURL 7.20.0.
CURL_RTSPREQ_TEARDOWN (int) Termina una sesión RTSP. Cerrar simplemente una conexión no termina la sesión RTSP ya que es válido controlar una sesión RTSP en diferentes conexiones. Disponible a partir de cURL 7.20.0.
CURL_SSLVERSION_DEFAULT (int)
CURL_SSLVERSION_MAX_DEFAULT (int) Disponible a partir de PHP 7.3.0 y cURL 7.54.0
CURL_SSLVERSION_MAX_NONE (int) Disponible a partir de PHP 7.3.0 y cURL 7.54.0
CURL_SSLVERSION_MAX_TLSv1_0 (int) Disponible a partir de PHP 7.3.0 y cURL 7.54.0
CURL_SSLVERSION_MAX_TLSv1_1 (int) Disponible a partir de PHP 7.3.0 y cURL 7.54.0
CURL_SSLVERSION_MAX_TLSv1_2 (int) Disponible a partir de PHP 7.3.0 y cURL 7.54.0
CURL_SSLVERSION_MAX_TLSv1_3 (int) Disponible a partir de PHP 7.3.0 y cURL 7.54.0
CURL_SSLVERSION_SSLv2 (int)
CURL_SSLVERSION_SSLv3 (int)
CURL_SSLVERSION_TLSv1 (int)
CURL_SSLVERSION_TLSv1_0 (int)
CURL_SSLVERSION_TLSv1_1 (int)
CURL_SSLVERSION_TLSv1_2 (int)
CURL_SSLVERSION_TLSv1_3 (int) Disponible a partir de PHP 7.3.0 y cURL 7.52.0
CURL_TIMECOND_IFMODSINCE (int)
CURL_TIMECOND_IFUNMODSINCE (int)
CURL_TIMECOND_LASTMOD (int)
CURL_TIMECOND_NONE (int)
CURL_TLSAUTH_SRP (int) Disponible a partir de cURL 7.21.4.
CURL_VERSION_ALTSVC (int) Disponible a partir de PHP 7.3.6 y cURL 7.64.1
CURL_VERSION_ASYNCHDNS (int) Resoluciones DNS asíncronas. Disponible a partir de PHP 7.3.0 y cURL 7.10.7
CURL_VERSION_BROTLI (int) Disponible a partir de PHP 7.3.0 y cURL 7.57.0
CURL_VERSION_CONV (int) Conversiones de caracteres soportadas. Disponible a partir de PHP 7.3.0 y cURL 7.15.4
CURL_VERSION_CURLDEBUG (int) Seguimiento de la memoria de depuración soportado. Disponible a partir de PHP 7.3.6 y cURL 7.19.6
CURL_VERSION_DEBUG (int) Construido con capacidades de depuración. Disponible a partir de PHP 7.3.0 y cURL 7.10.6
CURL_VERSION_GSASL (int) Disponible a partir de PHP 8.2.0 y cURL 7.76.0
CURL_VERSION_GSSAPI (int) Construido contra una biblioteca GSS-API. Disponible a partir de PHP 7.3.0 y cURL 7.38.0
CURL_VERSION_GSSNEGOTIATE (int) La autenticación Negotiate es soportada. Disponible a partir de PHP 7.3.0 y cURL 7.10.6 (obsoleto a partir de cURL 7.38.0)
CURL_VERSION_HSTS (int) Disponible a partir de PHP 8.2.0 y cURL 7.74.0
CURL_VERSION_HTTP2 (int) Soporte HTTP2 integrado. Disponible a partir de cURL 7.33.0
CURL_VERSION_HTTP3 (int) Disponible a partir de PHP 8.2.0 y cURL 7.66.0
CURL_VERSION_HTTPS_PROXY (int) Disponible a partir de PHP 7.3.0 y cURL 7.52.0
CURL_VERSION_IDN (int) Los nombres de dominio internacionalizados son soportados. Disponible a partir de PHP 7.3.0 y cURL 7.12.0
CURL_VERSION_IPV6 (int) Soporte IPv6.
CURL_VERSION_KERBEROS4 (int) La autenticación Kerberos V4 es soportada.
CURL_VERSION_KERBEROS5 (int) La autenticación Kerberos V5 es soportada. Disponible a partir de PHP 7.0.7 y cURL 7.40.0
CURL_VERSION_LARGEFILE (int) Soporte para ficheros de más de 2 Go. Disponible a partir de cURL 7.33.0
CURL_VERSION_LIBZ (int) Las funcionalidades de libz están presentes.
CURL_VERSION_MULTI_SSL (int) Disponible a partir de PHP 7.3.0 y cURL 7.56.0
CURL_VERSION_NTLM (int) La autenticación NTLM es soportada. Disponible a partir de PHP 7.3.0 y cURL 7.10.6
CURL_VERSION_NTLM_WB (int) La delegación NTLM al helper winbind es soportada. Disponible a partir de PHP 7.3.0 y cURL 7.22.0
CURL_VERSION_PSL (int) Lista de sufijos públicos de Mozilla, utilizada para la verificación de dominios de cookies. Disponible a partir de PHP 7.3.6 y cURL 7.47.0
CURL_VERSION_SPNEGO (int) La autenticación SPNEGO es soportada. Disponible a partir de PHP 7.3.0 y cURL 7.10.8
CURL_VERSION_SSL (int) Las opciones SSL están presentes.
CURL_VERSION_SSPI (int) Construido contra Windows SSPI. Disponible a partir de PHP 7.3.0 y cURL 7.13.2
CURL_VERSION_TLSAUTH_SRP (int) La autenticación TLS-SRP es soportada. Disponible a partir de PHP 7.3.0 y cURL 7.21.4
CURL_VERSION_UNICODE (int) Disponible a partir de PHP 8.2.0 y cURL 7.72.0
CURL_VERSION_UNIX_SOCKETS (int) Soporte para sockets de dominio Unix. Disponible a partir de PHP 7.0.7 y cURL 7.40.0
CURL_VERSION_ZSTD (int) Disponible a partir de PHP 8.2.0 y cURL 7.72.0
CURL_WRITEFUNC_PAUSE (int) Disponible a partir de cURL 7.18.0
CURL_PREREQFUNC_OK (int) Disponible a partir de PHP 8.4.0 y cURL 7.80.0.
CURL_PREREQFUNC_ABORT (int) Disponible a partir de PHP 8.4.0 y cURL 7.80.0.
curl_setopt()
Constantes Descripción
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 à partir de PHP 7.3.0 et cURL 7.53.0.

CURLOPT_ACCEPT_ENCODING (int)

Définit un string avec le contenu de l'en-tête Accept-Encoding: envoyé dans une requête HTTP. Définir à null pour désactiver l'envoi de l'en-tête Accept-Encoding:. Par défaut à null. Disponible à partir de cURL 7.21.6.

CURLOPT_ACCEPTTIMEOUT_MS (int)

Le nombre de maximum de millisecondes à attendre pour qu'un serveur se reconnecte à cURL lorsqu'une connexion FTP active est utilisée. Par défaut à 60000 millisecondes. Disponible à partir de cURL 7.24.0.

CURLOPT_ADDRESS_SCOPE (int)

L'identifiant de portée à utiliser lors de la connexion à une adresse IPv6. Cette option accepte n'importe quelle valeur qui peut être convertie en un int valide. Par défaut à 0. Disponible à partir de cURL 7.19.0.

CURLOPT_ALTSVC (int)

Passer un string avec 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 à partir de 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. Défini sur l'une des constantes CURLALTSVC_*. Par défaut, la gestion Alt-Svc est désactivée. Disponible à partir de PHP 8.2.0 et cURL 7.64.1.

CURLOPT_APPEND (int)

Mettre cette option à 1 fera que les téléchargements FTP ajoutant au fichier distant au lieu de l'écraser. Par défaut à 0. Disponible à partir de cURL 7.17.0.

CURLOPT_AUTOREFERER (int)

true pour définir automatiquement le champ Referer: dans les requêtes où il suit une redirection Location:. Par défaut, la valeur est 0.

CURLOPT_AWS_SIGV4 (int)

Apporte une authentification de signature AWS V4 sur l'en-tête HTTP(S) en tant que string. 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 à partir de PHP 8.2.0 et cURL 7.75.0.

CURLOPT_BINARYTRANSFER (int)

Cette constante n'est plus utilisée à partir de PHP 5.5.0. Obsolète à partir de PHP 8.4.0.

CURLOPT_BUFFERSIZE (int)

Une taille de tampon à utiliser pour chaque lecture. Il n'y a aucune garantie que cette demande sera satisfaite, cependant. Cette option accepte toute valeur pouvant être convertie en un int valide. Par défaut, la valeur est CURL_MAX_WRITE_SIZE (actuellement, 16kB). Disponible à partir de cURL 7.10.

CURLOPT_CAINFO (int)

Un string avec 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. Disponible à partir de cURL 7.4.2.

CURLOPT_CAINFO_BLOB (int)

Un string avec le nom d'un fichier PEM contenant un ou plusieurs certificats pour vérifier le pair avec. Cette option remplace CURLOPT_CAINFO. Disponible à partir de PHP 8.2.0 et de cURL 7.77.0.

CURLOPT_CAPATH (int)

Un string avec un répertoire qui contient plusieurs certificats CA. Utilisez cette option en combinaison avec CURLOPT_SSL_VERIFYPEER. Disponible à partir de cURL 7.9.8.

CURLOPT_CA_CACHE_TIMEOUT (int)

Définit le temps maximum en secondes pendant lequel un magasin de certificats CA mis en cache en mémoire peut être conservé et réutilisé pour de nouvelles connexions. Cette option accepte toute valeur pouvant être convertie en un int valide. Par défaut, la valeur est 86400 (24 heures). Disponible à partir de 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. Nécessite CURLOPT_VERBOSE pour avoir un effet. Par défaut, la valeur est false. Disponible à partir de cURL 7.19.1.

CURLOPT_CONNECTTIMEOUT (int)

Le nombre de secondes à attendre lors de la tentative de connexion. Utilisez 0 pour attendre indéfiniment. Cette option accepte toute valeur pouvant être convertie en un int valide. Par défaut, la valeur est 300. Disponible à partir de cURL 7.7.0.

CURLOPT_CONNECTTIMEOUT_MS (int)

Le nombre de millisecondes à attendre lors de la tentative de connexion. Utilisez 0 pour attendre indéfiniment. Si cURL 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. Cette option accepte toute valeur pouvant être convertie en un int valide. Par défaut, la valeur est 300000. Disponible à partir de 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. Par défaut, la valeur est false. Disponible à partir de 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 array de strings au format HOST:PORT:CONNECT-TO-HOST:CONNECT-TO-PORT. Disponible à partir de PHP 7.0.7 et cURL 7.49.0.

Un string avec 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). Disponible à partir de cURL 7.1.0.

CURLOPT_COOKIEFILE (int)

Un string avec 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. Disponible à partir de cURL 7.1.0.

CURLOPT_COOKIEJAR (int)

Un string avec le nom du fichier pour sauvegarder tous les cookies internes lorsque le gestionnaire destructeur est appelé. Disponible à partir de cURL 7.9.0.

Advertencia

à partir de 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)

Un string 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 à partir des fichiers spécifiés par CURLOPT_COOKIEFILE . Disponible à partir de cURL 7.14.1.

CURLOPT_COOKIESESSION (int)

true pour marquer ceci comme une nouvelle "session" de cookie. Cela forcera cURL à 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, cURL 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. Disponible à partir de cURL 7.9.7.

CURLOPT_CRLF (int)

true pour convertir les fins de ligne Unix en fins de ligne CRLF sur les transferts. Disponible à partir de cURL 7.1.0.

CURLOPT_CRLFILE (int)

Passer un string nommant un fichier avec la concaténation du CRL (Certificate Revocation List) (au format PEM) à utiliser dans la validation du certificat qui se produit pendant l'échange SSL. Lorsque cUrl est compilé pour utiliser GnuTLS, il n'y a aucun moyen d'influencer l'utilisation de CRL passée pour aider dans le processus de vérification. Lorsque cUrl est compilé pour utiliser OpenSSL, X509_V_FLAG_CRL_CHECK et X509_V_FLAG_CRL_CHECK_ALL sont tous deux définis, exigeant la vérification de la CRL contre tous les éléments de la chaîne de certificats si un fichier CRL est passé. Il est également à noter que CURLOPT_CRLFILE implique CURLSSLOPT_NO_PARTIALCHAIN à partir de cURL 7.71.0 en raison d'un bogue OpenSSL. Disponible à partir de cURL 7.19.0.

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. Cette option accepte une string ou null. Disponible à partir de cURL 7.1.0.

Nota:

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)

Un string avec le protocole par défaut à utiliser si l'URL manque d'un nom de schéma. Disponible à partir de PHP 7.0.7 et cURL 7.45.0.

CURLOPT_DIRLISTONLY (int)

Définit cette option à 1 pour avoir des effets différents basés sur le protocole avec lequel elle est utilisée. Les URLs basées sur FTP et SFTP listeront uniquement les noms de fichiers dans un répertoire. POP3 listera le message ou les messages de courrier électronique sur le serveur POP3. Pour FILE, cette option n'a pas d'effet car les répertoires sont toujours listés dans ce mode. Utiliser cette option avec CURLOPT_WILDCARDMATCH empêchera ce dernier d'avoir un quelconque effet. Par défaut à 0. Disponible à partir de cURL 7.17.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. Disponible à partir de 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). Cette option accepte toute valeur pouvant être convertie en un int valide. Disponible à partir de cURL 7.9.3.

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). Cette option accepte une string ou null. Disponible à partir de 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. Cette option accepte une string ou null. Disponible à partir de 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. Cette option accepte une string ou null. Disponible à partir de PHP 7.0.7 et cURL 7.33.0.

CURLOPT_DNS_SERVERS (int)

Passer un string avec une liste séparée par des virgules de serveurs DNS à utiliser au lieu du système par défaut (par exemple : 192.168.1.100,192.168.1.101:8080). Disponible à partir de cURL 7.24.0.

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 à partir de 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.). Disponible à partir de cURL 7.9.3 et obsolète à partir de cURL 7.11.1. À partir de PHP 8.4, cette option n'a plus aucun effet.

CURLOPT_DOH_SSL_VERIFYHOST (int)

Définir sur 2 pour vérifier le champ de nom du certificat SSL du serveur DNS-over-HTTPS par rapport au nom d'hôte. Disponible à partir de PHP 8.2.0 et cURL 7.76.0.

CURLOPT_DOH_SSL_VERIFYPEER (int)

Définir sur 1 pour activer et 0 pour désactiver la vérification de l'authenticité du certificat SSL du serveur DNS-over-HTTPS. Disponible à partir de PHP 8.2.0 et cURL 7.76.0.

CURLOPT_DOH_SSL_VERIFYSTATUS (int)

Définir sur 1 pour activer et 0 pour désactiver la vérification de l'état du certificat du serveur DNS-over-HTTPS en utilisant l'extension TLS "Certificate Status Request" (OCSP stapling). Disponible à partir de PHP 8.2.0 et cURL 7.76.0.

CURLOPT_DOH_URL (int)

Apporte l'URL DNS-over-HTTPS. Cette option accepte une string ou null. Disponible à partir de 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. Disponible à partir de cURL 7.7.0 et obsolète à partir de cURL 7.84.0.

CURLOPT_ENCODING (int)

Le contenu des en-têtes Accept-Encoding: en tant que string. Cela permet de décoder la réponse. Les encodages supportés sont identity, deflate, "gzip". Si une chaîne vide, string, est définie, un en-tête contenant tous les types d'encodage supportés est envoyé. Disponible à partir de 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. Cette option accepte toute valeur pouvant être convertie en un int valide. Disponible à partir de 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. Disponible à partir de cURL 7.1.0.

CURLOPT_FILE (int)

Accepte un descripteur de fichier resource vers le fichier dans lequel le transfert doit être écrit. La valeur par défaut est STDOUT (la fenêtre du navigateur). Disponible à partir de cURL 7.1.0 et obsolète à partir de cURL 7.9.7.

CURLOPT_FILETIME (int)

Définir sur 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(). Disponible à partir de cURL 7.5.0.

CURLOPT_FNMATCH_FUNCTION (int)

Passer un callable qui sera utilisé pour la correspondance de caractères génériques. La signature de la fonction de rappel doit être :

callback(resource $curlHandle, string $pattern, string $string): int
curlHandle
Le gestionnaire cURL.
pattern
La chaîne de caractères génériques.
string
Le string sur lequel exécuter la correspondance de caractères génériques.
La fonction de rappel doit renvoyer CURL_FNMATCHFUNC_MATCH si le modèle correspond à la string, CURL_FNMATCHFUNC_NOMATCH si ce n'est pas le cas ou CURL_FNMATCHFUNC_FAIL si une erreur s'est produite. Disponible à partir de cURL 7.21.0.

CURLOPT_FOLLOWLOCATION (int)

Définir sur 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)

Définir sur true pour forcer à fermer explicitement la connexion lorsque le processus est terminé, elle ne sera donc pas mise en cache pour réutilisation. Disponible à partir de cURL 7.7.0.

CURLOPT_FRESH_CONNECT (int)

Définir sur true pour forcer l'utilisation d'une nouvelle connexion au lieu d'une connexion mise en cache. Disponible à partir de cURL 7.7.0.

CURLOPT_FTPAPPEND (int)

Définir sur true pour ajouter au fichier distant au lieu de l'écraser. Disponible à partir de cURL 7.1.0 et obsolète à partir de cURL 7.16.4.

CURLOPT_FTPASCII (int)

Un alias de CURLOPT_TRANSFERTEXT. Utilisez plutôt cela. Disponible à partir de cURL 7.1, obsolète à partir de cURL 7.11.1 et dernière fois disponible à partir de cURL 7.15.5. Supprimé à partir de PHP 7.3.0.

CURLOPT_FTPLISTONLY (int)

Définir sur true pour seulement lister les noms d'un répertoire FTP. Disponible à partir de cURL 7.1.0 et obsolète à partir de cURL 7.16.4.

CURLOPT_FTPPORT (int)

Une string 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. Le string 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. Cette option accepte une string ou null. Disponible à partir de cURL 7.1.0.

CURLOPT_FTPSSLAUTH (int)

Définir la méthode d'authentification FTP sur SSL (si activée) sur l'une des constantes CURLFTPAUTH_*. La valeur par défaut est CURLFTPAUTH_DEFAULT.

CURLOPT_FTP_ACCOUNT (int)

Passer un string qui sera envoyé comme information de compte sur FTP (utiliser la commande ACCT) après que le nom d'utilisateur et le mot de passe aient été fournis au serveur. Définir à null pour désactiver l'envoi de l'information de compte. Par défaut à null. Disponible à partir de cURL 7.13.0.

CURLOPT_FTP_ALTERNATIVE_TO_USER (int)

Passer un string qui sera utilisé pour essayer de s'authentifier sur FTP si la négociation USER/PASS échoue. Disponible à partir de cURL 7.15.5.

CURLOPT_FTP_CREATE_MISSING_DIRS (int)

Définir sur true pour créer les répertoires manquants lorsqu'une opération FTP rencontre un chemin qui n'existe pas actuellement. Disponible à partir de cURL 7.10.7.

CURLOPT_FTP_FILEMETHOD (int)

Indique à curl quelle méthode utiliser pour atteindre un fichier sur un serveur FTP(S). Les valeurs possibles sont l'une des constantes CURLFTPMETHOD_*. La valeur par défaut est CURLFTPMETHOD_MULTICWD. Disponible à partir de cURL 7.15.1.

CURLOPT_FTP_RESPONSE_TIMEOUT (int)

Le délai en secondes que cURL attendra pour une réponse d'un serveur FTP Cette option remplace CURLOPT_TIMEOUT. Cette option accepte n'importe quelle valeur qui peut être convertie en un int valide. Ce nom d'option est remplacé par CURLOPT_SERVER_RESPONSE_TIMEOUT, disponible à partir de PHP 8.4.0. Disponible à partir de cURL 7.10.8 et dépréciée à partir de cURL 7.85.0.

CURLOPT_FTP_SKIP_PASV_IP (int)

Si cette option est définie à 1, cURL n'utilisera pas l'adresse IP que le serveur suggère dans sa réponse 227 à la commande PASV de cURL mais utilisera l'adresse IP qu'il a utilisée pour la connexion. Le numéro de port reçu de la réponse 227 ne sera pas ignoré par cURL. Par défaut à 1 à partir de cURL 7.74.0 et 0 avant cela. Disponible à partir de cURL 7.15.0.

CURLOPT_FTP_SSL (int)

Disponible à partir de cURL 7.11.0 et obsolète à partir de cURL 7.16.4.

CURLOPT_FTP_SSL_CCC (int)

Cette option fait en sorte que cURL utilise CCC (Clear Command Channel) qui arrête la couche SSL/TLS après l'authentification rendant le reste de la communication du canal de contrôle non chiffrée. Utiliser une des constantes CURLFTPSSL_CCC_*. Par défaut à CURLFTPSSL_CCC_NONE. Disponible à partir de cURL 7.16.1.

CURLOPT_FTP_USE_EPRT (int)

Définir sur true pour utiliser EPRT (et LPRT) lors des téléchargements FTP actifs. Définir sur false pour désactiver EPRT et LPRT et utiliser uniquement PORT. Disponible à partir de cURL 7.10.5.

CURLOPT_FTP_USE_EPSV (int)

Définir sur true pour essayer d'abord une commande EPSV pour les transferts FTP avant de revenir à PASV. Définir sur false pour désactiver EPSV. Disponible à partir de cURL 7.9.2.

CURLOPT_FTP_USE_PRET (int)

Définir à 1 pour envoyer une commande PRET avant PASV (et EPSV). N'a aucun effet lors de l'utilisation du mode de transfert FTP actif. Par défaut à 0. Disponible à partir de cURL 7.20.0.

CURLOPT_GSSAPI_DELEGATION (int)

Définir à CURLGSSAPI_DELEGATION_FLAG pour permettre la délégation inconditionnelle des informations d'identification GSSAPI. Définir à CURLGSSAPI_DELEGATION_POLICY_FLAG pour déléguer uniquement si le drapeau OK-AS-DELEGATE est défini dans le ticket de service. Par défaut à CURLGSSAPI_DELEGATION_NONE. Disponible à partir de cURL 7.22.0.

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. Cette option accepte toute valeur pouvant être convertie en un int valide. Disponible à partir de 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 à partir de PHP 7.3.0 et cURL 7.60.0.

CURLOPT_HEADER (int)

Définir sur true pour inclure les en-têtes dans la sortie envoyée au rappel défini par CURLOPT_WRITEFUNCTION. Disponible à partir de cURL 7.1.0.

CURLOPT_HEADERFUNCTION (int)

Un callable avec la signature suivante :

callback(resource $curlHandle, string $headerData): int
curlHandle
Le gestionnaire cURL.
headerData
Les données d'en-tête qui doivent être écrites par le rappel.
Le rappel doit renvoyer le nombre d'octets écrits. Disponible à partir de cURL 7.7.2.

CURLOPT_HEADEROPT (int)

Envoyer les en-têtes HTTP à la fois au proxy et à l'hôte ou séparément. Les valeurs possibles sont n'importe lequel des CURLHEADER_* constants. Défaut à CURLHEADER_SEPARATE à partir de cURL 7.42.1, et CURLHEADER_UNIFIED avant cela. Disponible à partir de PHP 7.0.7 et cURL 7.37.0.

CURLOPT_HSTS (int)

string avec le nom de fichier de cache HSTS (HTTP Strict Transport Security) ou null pour permettre HSTS sans lire ni écrire dans un fichier et effacer la liste des fichiers pour lire les données HSTS. Disponible à partir de PHP 8.2.0 et cURL 7.74.0.

CURLOPT_HSTS_CTRL (int)

Accepte un masque de bits des fonctionnalités HSTS (HTTP Strict Transport Security) définies par les CURLHSTS_* constants. Disponible à partir de 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 à partir de cURL 7.66.0; avant, c'était true. Disponible à partir de PHP 7.3.15 et 7.4.3, respectivement, et cURL 7.64.0

CURLOPT_HTTP200ALIASES (int)

Un array de réponses HTTP 200 qui seront considérées comme des réponses valides et non comme des erreurs. Disponible à partir de cURL 7.10.3.

CURLOPT_HTTPAUTH (int)

Un masque de bits des méthodes d'authentification HTTP à utiliser. Les options sont : CURLAUTH_BASIC, CURLAUTH_DIGEST, CURLAUTH_GSSNEGOTIATE, CURLAUTH_NTLM, CURLAUTH_AWS_SIGV4, CURLAUTH_ANY, CURLAUTH_ANYSAFE. Si plus d'une méthode est utilisée, 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. Disponible à partir de cURL 7.10.6.

CURLOPT_HTTPGET (int)

Définir sur true pour réinitialiser la méthode de requête HTTP à GET. Comme GET est la valeur par défaut, cela n'est nécessaire que si la requête de requête a été changée. Disponible à partir de cURL 7.8.1.

CURLOPT_HTTPHEADER (int)

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

CURLOPT_HTTPPROXYTUNNEL (int)

true pour tunneliser à travers un proxy HTTP donné. Disponible à partir de cURL 7.3.0.

CURLOPT_HTTP_CONTENT_DECODING (int)

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

CURLOPT_HTTP_TRANSFER_DECODING (int)

Si définit à 0, le décodage de transfert est désactivé. Si définit à 1, le décodage de transfert est activé. cURL fait le décodage de transfert par morceaux par défaut sauf si cette option est définie à 0. Par défaut à 1. Disponible à partir de cURL 7.16.2.

CURLOPT_HTTP_VERSION (int)

Définir sur l'une des constantes CURL_HTTP_VERSION_* pour que cURL utilise la version HTTP spécifiée. Disponible à partir de cURL 7.9.1.

CURLOPT_IGNORE_CONTENT_LENGTH (int)

Si définit à 1, ignore l'en-tête Content-Length dans la réponse HTTP et ignore la demande ou la dépendance de celui-ci pour les transferts FTP. Par défaut à 0. Disponible à partir de cURL 7.14.1.

CURLOPT_INFILE (int)

Accepte un handle de fichier resource vers le fichier à partir duquel le transfert doit être lu lors du téléchargement. Disponible à partir de cURL 7.1.0 et déprécié à partir de cURL 7.9.7. Utilisez CURLOPT_READDATA à la place.

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. Cette option accepte toute valeur pouvant être convertie en un int valide. Disponible à partir de cURL 7.1.0.

CURLOPT_INTERFACE (int)

Définir sur une string contenant 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. Disponible à partir de cURL 7.1.0.

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. Définir sur l'une des constantes CURL_IPRESOLVE_*. La valeur par défaut est CURL_IPRESOLVE_WHATEVER. Disponible à partir de cURL 7.10.8.

CURLOPT_ISSUERCERT (int)

Si définit à un string nommant un fichier contenant un certificat CA au format PEM, une vérification supplémentaire est effectuée contre le certificat du pair pour vérifier que l'émetteur est bien celui associé avec le certificat fourni par l'option. Pour que le résultat de la vérification soit considéré comme un échec, cette option doit être utilisée en combinaison avec l'option CURLOPT_SSL_VERIFYPEER. Disponible à partir de cURL 7.19.0.

CURLOPT_ISSUERCERT_BLOB (int)

Passer une string contenant des données binaires d'un certificat SSL CA au format PEM. Si cette option est définie, une vérification supplémentaire du certificat de l'entité (peer) est effectuée pour vérifier que l'émetteur est celui associé au certificat fourni par cette option. Disponible à partir de PHP 8.1.0 et cURL 7.71.0.

CURLOPT_KEEP_SENDING_ON_ERROR (int)

Définir à true pour continuer à envoyer le corps de la requête si le code HTTP renvoyé est supérieur ou égal à 300. L'action par défaut consiste à 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 à partir de PHP 7.3.0 et cURL 7.51.0.

CURLOPT_KEYPASSWD (int)

Définir à une string avec le mot de passe requis pour utiliser le CURLOPT_SSLKEY ou CURLOPT_SSH_PRIVATE_KEYFILE. Définir cette option à null désactive l'utilisation d'un mot de passe pour ces options. Disponible à partir de cURL 7.17.0.

CURLOPT_KRB4LEVEL (int)

La sécurité KRB4 (Kerberos 4). Toute valeur stringsuivante (dans l'ordre du moins au plus puissant) est valide : clear, safe, confidential, private. Si la string 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. Disponible à partir de cURL 7.3.0 et obsolète à partir de cURL 7.17.0.

CURLOPT_KRBLEVEL (int)

Définit le niveau de sécurité Kerberos pour FTP et active également la prise en charge de Kerberos. Cela doit être défini sur l'une des strings suivantes : clear, safe, confidential, private Si l'option string est définie mais ne correspond à aucune de ces valeurs, private est utilisé. Définir cette option à null désactivera la prise en charge de Kerberos pour FTP. Par défaut à null. Disponible à partir de cURL 7.16.4.

CURLOPT_LOCALPORT (int)

Définit le numéro de port local du socket utilisé pour la connexion. Cette option acccepte n'importe quelle valeur qui peut être convertie en un int valide. Par défaut à 0. Disponible à partir de cURL 7.15.2.

CURLOPT_LOCALPORTRANGE (int)

Le nombre d'essaie que cURL fait pour trouver un numéro de port local fonctionnel, commençant par celui défini avec CURLOPT_LOCALPORT. Cette option accepte n'importe quelle valeur qui peut être convertie en un int valide. Par défaut à 1. Disponible à partir de cURL 7.15.2.

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 à partir de 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. Cette option accepte toute valeur pouvant être convertie en un int valide. Disponible à partir de cURL 7.1.0.

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. Cette option accepte toute valeur pouvant être convertie en un int valide. Disponible à partir de cURL 7.1.0.

CURLOPT_MAIL_AUTH (int)

Définit un string avec l'adresse d'authentification (identité) d'un message soumis qui est relayé à un autre serveur. Cette adresse ne doit pas être spécifiée dans une paire de chevrons (><). Si un string vide est utilisé, alors une paire de chevrons est envoyée par cURL comme requis par la RFC 2554. Disponible à partir de cURL 7.25.0.

CURLOPT_MAIL_FROM (int)

Définit un string avec l'adresse email de l'expéditeur lors de l'envoi d'un email SMTP. L'adresse email doit être spécifiée avec des chevrons (><) autour d'elle, qui si non spécifiés sont ajoutés automatiquement. Si ce paramètre n'est pas spécifié, une adresse vide est envoyée au serveur SMTP qui pourrait causer le rejet de l'email. Disponible à partir de cURL 7.20.0.

CURLOPT_MAIL_RCPT (int)

Définit un array de strings avec les destinataires à envoyer au serveur dans une requête de courrier SMTP. Chaque destinataire doit être spécifié dans une paire de chevrons (><). Si un chevron n'est pas utilisé comme premier caractère, cURL suppose qu'une seule adresse email a été fournie et l'encadre dans des chevrons. Disponible à partir de cURL 7.20.0.

CURLOPT_MAIL_RCPT_ALLLOWFAILS (int)

Définir sur 1 pour permettre à la commande RCPT TO d'échouer pour certains destinataires, ce qui fait que cURL ignore les erreurs pour les destinataires individuels et continue avec les autres destinataires acceptés. Si tous les destinataires entraînent des échecs et que ce drapeau est spécifié, cURL interrompt la conversation SMTP et renvoie l'erreur reçue de la dernière commande RCPT TO. Remplacé par CURLOPT_MAIL_RCPT_ALLOWFAILS à partir de cURL 8.2.0. Disponible à partir de PHP 8.2.0 et cURL 7.69.0. Déprécié à partir de cURL 8.2.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. Cette option accepte toute valeur pouvant être convertie en un int valide. Disponible à partir de 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. Cette option accepte toute valeur pouvant être convertie en un int valide. Disponible à partir de cURL 7.7.0.

CURLOPT_MAXFILESIZE (int)

Définit la taille maximale acceptée (en octets) d'un fichier à télécharger. Si le fichier demandé est trouvé plus grand que cette valeur, le transfert est interrompu et CURLE_FILESIZE_EXCEEDED est retourné. Passer 0 désactive cette option, et passer une taille négative retourne une CURLE_BAD_FUNCTION_ARGUMENT. Si la taille du fichier n'est pas connue avant le début du téléchargement, cette option n'a pas d'effet. Pour une limite de taille supérieure à 2GB, CURLOPT_MAXFILESIZE_LARGE doit être utilisé. à partir de cURL 8.4.0, cette option arrête également les transferts en cours si ils atteignent ce seuil. Cette option accepte n'importe quelle valeur qui peut être convertie en un int valide. Par défaut à 0. Disponible à partir de cURL 7.10.8.

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 à partir de 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. Cette option accepte toute valeur pouvant être convertie en un int valide. Disponible à partir de 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. Disponible à partir de cURL 7.5.0.

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. Cette option accepte toute valeur pouvant être convertie en un int valide. Disponible à partir de 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. Cette option accepte toute valeur pouvant être convertie en un int valide. Disponible à partir de cURL 7.15.5.

CURLOPT_MIME_OPTIONS (int)

Définir une valeur à un masque de bits des constantes CURLMIMEOPT_*. Actuellement, il n'y a qu'une seule option disponible : CURLMIMEOPT_FORMESCAPE. Disponible à partir de PHP 8.3.0 et cURL 7.81.0.

CURLOPT_MUTE (int)

Définir à true pour être complètement silencieux avec les fonctions cURL. Utilisez CURLOPT_RETURNTRANSFER à la place. Disponible à partir de cURL 7.1.0, déprécié à partir de cURL 7.8.0 et dernier disponible à partir de cURL 7.15.5. Supprimé à partir de PHP 7.3.0.

CURLOPT_NETRC (int)

Définir à 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. Disponible à partir de cURL 7.1.0.

CURLOPT_NETRC_FILE (int)

Définit un string contenant le nom complet du fichier .netrc. Si cette option est omise et que CURLOPT_NETRC est défini, cURL vérifie un fichier .netrc dans le répertoire personnel de l'utilisateur actuel. Disponible à partir de cURL 7.11.0.

CURLOPT_NEW_DIRECTORY_PERMS (int)

Définit la valeur des permissions (int) qui sont définies sur les répertoires nouvellement créés sur le serveur distant. La valeur par défaut est 0755. Les seuls protocoles qui peuvent utiliser cette option sont sftp://, scp:// et file://. Disponible à partir de cURL 7.16.4.

CURLOPT_NEW_FILE_PERMS (int)

Définit la valeur des permissions (int) qui sont définies sur les fichiers nouvellement créés sur le serveur distant. La valeur par défaut est 0644. Les seuls protocoles qui peuvent utiliser cette option sont sftp://, scp:// et file://. Disponible à partir de cURL 7.16.4.

CURLOPT_NOBODY (int)

Définir sur true pour exclure le corps de la sortie. Pour HTTP(S), cURL effectue une requête HEAD. Pour la plupart des autres protocoles, cURL ne demande pas du tout les données du corps. Changer cela en false entraînera l'inclusion des données du corps dans la sortie. Disponible à partir de cURL 7.1.0.

CURLOPT_NOPROGRESS (int)

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

Nota:

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

Disponible à partir de cURL 7.1.0.

CURLOPT_NOPROXY (int)

Définit un string consistant en une liste séparée par des virgules de noms d'hôtes qui ne nécessitent pas de proxy pour être atteints. Chaque nom dans cette liste est comparé soit comme un domaine qui contient le nom d'hôte ou le nom d'hôte lui-même. Le seul caractère générique disponibles dans le string est un simple caractère * qui correspond à tous les hosts, désactivant effectivement le proxy. Définir cette option à une string vide active le proxy pour tous les noms d'hôtes. à partir de cURL 7.86.0, les adresses IP définies avec cette option peuvent être fournies en utilisant la notation CIDR. Disponible à partir de cURL 7.19.4.

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 à partir de cURL 7.10.

CURLOPT_PASSWDFUNCTION (int)

Un callable avec la signature suivante :

callback(resource $curlHandle, string $passwordPrompt, int $maximumPasswordLength): string
curlHandle
Le gestionnaire cURL.
passwordPrompt
Une invite de mot de passe.
maximumPasswordLength
La longueur maximale du mot de passe.
Le callback doit retourner une string contenant le mot de passe. Disponible à partir de cURL 7.4.2, déprécié à partir de cURL 7.11.1 et dernier disponible à partir de cURL 7.15.5. Enlevé à partir de PHP 7.3.0.

CURLOPT_PASSWORD (int)

Définir sur une string contenant le mot de passe à utiliser pour l'authentification. Disponible à partir de cURL 7.19.1.

CURLOPT_PATH_AS_IS (int)

Définir sur true pour que cURL n'altère pas les chemins d'URL avant de les transmettre au serveur. Par défaut, c'est false, ce qui écrase les séquences de /../ ou /./ qui peuvent exister dans la partie chemin de l'URL et qui sont censées être supprimées conformément à la section 5.2.4 du RFC 3986. Disponible à partir de PHP 7.0.7 et cURL 7.42.0.

CURLOPT_PINNEDPUBLICKEY (int)

Définir une string avec la clé publique épinglée. La string peut être le nom du fichier de la clé publique épinglée au format PEM ou DER. La string peut également être un nombre quelconque de hachages sha256 encodés en base64 précédés de sha256// et séparés par ;. Disponible à partir de PHP 7.0.7 et cURL 7.39.0.

CURLOPT_PIPEWAIT (int)

Définir sur true pour attendre qu'une connexion existante confirme si elle peut faire du multiplexage et l'utiliser si c'est le cas avant de créer et d'utiliser une nouvelle connexion. Disponible à partir de PHP 7.0.7 et cURL 7.43.0.

CURLOPT_PORT (int)

Un int avec un numéro de port alternatif pour se connecter à la place de celui spécifié dans l'URL ou du port par défaut pour le protocole utilisé. Disponible à partir de cURL 7.1.0.

CURLOPT_POST (int)

Définir à true pour effectuer une requête HTTP POST. Cette requête utilise l'en-tête application/x-www-form-urlencoded. Par défaut, c'est false. Disponible à partir de cURL 7.1.0.

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 string urlencodée comme 'para1=val1&para2=val2&...' ou sous forme d'un array 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 array. Disponible à partir de cURL 7.1.0.

CURLOPT_POSTQUOTE (int)

Un array de strings de commandes FTP à exécuter sur le serveur après l'exécution de la requête FTP. Disponible à partir de cURL 7.1.0.

CURLOPT_POSTREDIR (int)

Définir à un bitmask de CURL_REDIR_POST_301, CURL_REDIR_POST_302 et CURL_REDIR_POST_303 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 à partir de 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 un string vide désactive explicitement l'utilisation d'un préproxy. Pour spécifier le numéro de port dans ce string, 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 à partir de PHP 7.3.0 et cURL 7.52.0.

CURLOPT_PREQUOTE (int)

Définit un tableau de commandes FTP à exécuter sur le serveur avant la requête après que la connexion FTP a été établie. Ces commandes ne sont pas effectués lorsqu'une liste de répertoire est demandée, seulement pour les transfers de fichiers. Disponible à partir de cURL 7.9.5.

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 à partir de cURL 7.10.3.

CURLOPT_PROGRESSFUNCTION (int)

Un callable avec la signature suivante :

callback(
    resource $curlHandle,
    int $bytesToDownload,
    int $bytesDownloaded,
    int $bytesToUpload,
    int $bytesUploaded
): int
curlHandle
Le gestionnaire cURL.
bytesToDownload
Le nombre total d'octets attendus à télécharger lors de ce transfert.
bytesDownloaded
Le nombre d'octets téléchargés jusqu'à présent.
bytesToUpload
Le nombre total d'octets attendus à télécharger lors de ce transfert.
bytesUploaded
Le nombre d'octets téléchargés jusqu'à présent.
Le callback doit renvoyer un int avec une valeur non nulle pour interrompre le transfert et définir une erreur CURLE_ABORTED_BY_CALLBACK.

Nota:

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

Disponible à partir de cURL 7.1.0 et obsolète à partir de cURL 7.32.0. Utilisez CURLOPT_XFERINFOFUNCTION à la place.

CURLOPT_PROTOCOLS (int)

Un masque de bits de valeurs CURLPROTO_*. Si utilisé, ce masque limite les protocoles que cURL peut utiliser dans le transfert. Par défaut, cela vaut CURLPROTO_ALL, c'est-à-dire que cURL acceptera tous les protocoles qu'il prend en charge. Voir CURLOPT_REDIR_PROTOCOLS. Disponible à partir de cURL 7.19.4 et déprécié à partir de cURL 7.85.0.

CURLOPT_PROTOCOLS_STR (int)

Définir sur une string contenant une liste séparée par des virgules de noms de protocoles insensibles à la casse (schémas d'URL) autorisés dans le transfert. Définir sur ALL pour activer tous les protocoles. Par défaut, cURL accepte tous les protocoles pour lesquels il a été construit avec le support. Les protocoles disponibles sont : DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPE, RTMPS, RTMPT, RTMPTE, RTMPTS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS, WSS. Disponible à partir de PHP 8.3.0 et cURL 7.85.0.

CURLOPT_PROXY (int)

Une string avec le proxy HTTP à travers lequel effectuer les requêtes. Cela doit être le nom d'hôte, l'adresse IP numérique en notation décimale ou une adresse IPv6 numérique écrite entre [crochets]. Disponible à partir de cURL 7.1.0.

CURLOPT_PROXYAUTH (int)

Un bitmask des méthodes d'authentification HTTP (CURLAUTH_*) à utiliser pour la connexion au proxy. Pour l'authentification par proxy, seules CURLAUTH_BASIC et CURLAUTH_NTLM sont actuellement prises en charge. Par défaut, c'est CURLAUTH_BASIC. Disponible à partir de cURL 7.10.7.

CURLOPT_PROXYHEADER (int)

Un array d'en-têtes HTTP personnalisés en tant que string à envoyer au proxy. Disponible à partir de PHP 7.0.7 et cURL 7.37.0.

CURLOPT_PROXYPASSWORD (int)

Définit un string avec le mot de passe à utiliser pour l'authentification avec le proxy. Disponible à partir de cURL 7.19.1.

CURLOPT_PROXYPORT (int)

Un int avec le numéro de port du proxy à utiliser pour la connexion. Ce numéro de port peut également être défini dans CURLOPT_PROXY. Le définir à zéro fait en sorte que cURL utilise le numéro de port par défaut du proxy ou le numéro de port spécifié dans la chaîne de caractères de l'URL du proxy. Disponible à partir de cURL 7.1.0.

CURLOPT_PROXYTYPE (int)

Définit le type de proxy à l'une des constantes CURLPROXY_*. Par défaut, c'est CURLPROXY_HTTP. Disponible à partir de cURL 7.10.

CURLOPT_PROXYUSERNAME (int)

Définit un string avec le nom d'utilisateur à utiliser pour l'authentification avec le proxy. Disponible à partir de cURL 7.19.1.

CURLOPT_PROXYUSERPWD (int)

Une string contenant un nom d'utilisateur et un mot de passe au format [nom_utilisateur]:[mot_de_passe] à utiliser pour la connexion au proxy. Disponible à partir de cURL 7.1.0.

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 cURL est supposé être stocké. Disponible à partir de PHP 7.3.0 et cURL 7.52.0.

CURLOPT_PROXY_CAINFO_BLOB (int)

Un string avec 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 cURL est supposé être stocké. Disponible à partir de PHP 8.2.0 et cURL 7.77.0.

CURLOPT_PROXY_CAPATH (int)

Un string avec le répertoire contenant plusieurs certificats CA pour vérifier le proxy HTTPS. Disponible à partir de PHP 7.3.0 et cURL 7.52.0.

CURLOPT_PROXY_CRLFILE (int)

Définir sur une string avec le nom de fichier contenant la liste de révocation de certificats (CRL) au format PEM à utiliser dans la validation du certificat qui se produit pendant l'échange SSL. Disponible à partir de 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 en tant questring. Disponible à partir de PHP 8.1.0 et cURL 7.71.0.

CURLOPT_PROXY_ISSUERCERT_BLOB (int)

Un string avec le certificat SSL de l'émetteur du proxy à partir du blob de mémoire. Disponible à partir de PHP 8.1.0 et cURL 7.71.0.

CURLOPT_PROXY_KEYPASSWD (int)

Définit le string à utiliser comme mot de passe pour charger la clé privée CURLOPT_PROXY_SSLKEY. Une phrase secrète n'est pas nécessaire pour charger un certificat, mais elle est requise pour charger une clé privée. Cette option est pour se connecter à un proxy HTTPS, pas à un serveur HTTPS. Disponible à partir de PHP 7.3.0 et cURL 7.52.0.

CURLOPT_PROXY_PINNEDPUBLICKEY (int)

Définir la clé publique ancrée pour le proxy HTTPS. La string peut être le nom de fichier de la clé publique ancrée qui est censée être au format PEM ou DER. La string peut également être n'importe quel nombre de hachages sha256 encodés en base64 précédés de sha256// et séparés par ;. Disponible à partir de PHP 7.3.0 et cURL 7.52.0.

CURLOPT_PROXY_SERVICE_NAME (int)

Un string avec le nom du service d'authentification du proxy. Disponible à partir de 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)

Une string avec le nom de fichier du 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 utilisé pour l'authentification tel qu'il est nommé dans la base de données de sécurité. Si un fichier du répertoire courant doit être utilisé, il doit être précédé de ./ afin d'éviter toute confusion avec un surnom. Disponible à partir de PHP 7.3.0 et cURL 7.52.0.

CURLOPT_PROXY_SSLCERTTYPE (int)

Une string avec le format du certificat client utilisé lors de la connexion à un proxy HTTPS. Les formats pris en charge 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 à partir de PHP 7.3.0 et cURL 7.52.0.

CURLOPT_PROXY_SSLCERT_BLOB (int)

Un string avec le certificat client SSL du proxy. Disponible à partir de PHP 8.1.0 et cURL 7.71.0.

CURLOPT_PROXY_SSLKEY (int)

Un string avec le nom de fichier de la clé privée utilisée pour se connecter au proxy HTTPS. Le format par défaut est PEM et peut être modifié 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 à partir de PHP 7.3.0 et cURL 7.52.0.

CURLOPT_PROXY_SSLKEYTYPE (int)

Un string avec le format de la clé privée. Les formats pris en charge sont : PEM, DER, ENG. Disponible à partir de PHP 7.3.0 et cURL 7.52.0.

CURLOPT_PROXY_SSLKEY_BLOB (int)

Un string avec la clé privée utilisée pour se connecter au proxy HTTPS. Disponible à partir de PHP 8.1.0 et cURL 7.71.0.

CURLOPT_PROXY_SSLVERSION (int)

Définir la version TLS de proxy HTTPS préférée sur l'une des constantes CURL_SSLVERSION_*. Par défaut, cela correspond à CURL_SSLVERSION_DEFAULT.

Advertencia

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 à partir de PHP 7.3.0 et cURL 7.52.0.

CURLOPT_PROXY_SSL_CIPHER_LIST (int)

Une string avec une liste de chiffres séparés par des deux-points à utiliser pour la connexion au proxy HTTPS. Lorsqu'elle est utilisée avec OpenSSL, des virgules et des espaces sont également acceptables comme séparateurs, et !, - et + peuvent être utilisés comme opérateurs. Disponible à partir de PHP 7.3.0 et cURL 7.52.0.

CURLOPT_PROXY_SSL_OPTIONS (int)

Définir les options de comportement SSL du proxy, qui est un masque de bits des CURLSSLOPT_* constantes. Disponible à partir de 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! Définissez sur 1 à partir de cURL 7.28.0 et antérieur en tant qu'option de débogage. Définir sur 1 à partir de cURL 7.28.1 à 7.65.3 CURLE_BAD_FUNCTION_ARGUMENT est renvoyé. À partir de cURL 7.66.0, 1 et 2 sont traités comme la même valeur. Par défaut, la valeur de cette option doit être maintenue à 2. Dans les environnements de production, la valeur de cette option doit rester à 2. Disponible à partir de PHP 7.3.0 et cURL 7.52.0.

CURLOPT_PROXY_SSL_VERIFYPEER (int)

Définir sur 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 à partir de PHP 7.3.0 et cURL 7.52.0

CURLOPT_PROXY_TLS13_CIPHERS (int)

Une string avec une liste de chiffres séparés par des deux-points à utiliser pour la connexion au proxy via TLS 1.3. Cette option est actuellement utilisée uniquement lorsque cURL est construit pour utiliser OpenSSL 1.1.1 ou une version ultérieure. Lors de l'utilisation d'un autre backend SSL, les suites de chiffrement TLS 1.3 peuvent être définies avec l'option CURLOPT_PROXY_SSL_CIPHER_LIST. Disponible à partir de PHP 7.3.0 et cURL 7.61.0.

CURLOPT_PROXY_TLSAUTH_PASSWORD (int)

Une string contenant le mot de passe à utiliser pour la méthode d'authentification TLS spécifiée avec le CURLOPT_PROXY_TLSAUTH_TYPE. Nécessite également que l'option CURLOPT_PROXY_TLSAUTH_USERNAME soit définie. Disponible à partir de 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.

Nota:

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

Disponible à partir de 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 à partir de PHP 7.3.0 et cURL 7.52.0.

CURLOPT_PROXY_TRANSFER_MODE (int)

Définit à 1 pour définir le mode de transfert (binaire ou ASCII) pour les transfers FTP effectués via un proxy HTTP, en ajoutant type=a ou type=i à l'URL. Sans ce paramètre ou s'il est défini à 0, CURLOPT_TRANSFERTEXT n'a aucun effet lors de l'utilisation de FTP via un proxy. Par défaut à 0. Disponible à partir de cURL 7.18.0.

CURLOPT_PUT (int)

true pour effectuer une requête HTTP PUT d'un fichier. Le fichier à mettre doit être défini avec CURLOPT_READDATA et CURLOPT_INFILESIZE. Disponible à partir de cURL 7.1.0 et obsolète à partir de cURL 7.12.1.

CURLOPT_QUICK_EXIT (int)

Définir sur true pour que cURL ignore le nettoyage des ressources lors de la récupération d'un timeout. Cela permet une terminaison rapide du processus cURL au détriment d'une possible fuite de ressources associées. Disponible à partir de PHP 8.3.0 et cURL 7.87.0.

CURLOPT_QUOTE (int)

Un array de commandes FTP à exécuter sur le serveur avant la requête FTP. Disponible à partir de cURL 7.1.0.

CURLOPT_RANDOM_FILE (int)

Une string avec un nom de fichier à utiliser pour initialiser le générateur de nombres aléatoires pour SSL. Disponible à partir de cURL 7.7.0 et obsolète à partir de cURL 7.84.0.

CURLOPT_RANGE (int)

Une string avec la(les) plage(s) 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. Définir sur null pour désactiver la demande d'une plage de bytes. Disponible à partir de cURL 7.1.0.

CURLOPT_READDATA (int)

Définit un pointeur de fichier resource qui sera utilisé par la fonction de lecture de fichier définie avec CURLOPT_READFUNCTION. Disponible à partir de cURL 7.9.7.

CURLOPT_READFUNCTION (int)

Un callable avec la signature suivante :

callback(resource $curlHandle, resource $streamResource, int $maxAmountOfDataToRead): string
curlHandle
Le handle cURL.
streamResource
Ressource de flux resource fournie à cURL via l'option CURLOPT_READDATA.
maxAmountOfDataToRead
La quantité maximale de données à lire.
Le callback doit retourner une string d'une longueur égale ou inférieure à la quantité de données demandée, typiquement en la lisant à partir du stream de flux passée. Elle doit renvoyer un string vide pour signaler la fin du fichier. Disponible à partir de cURL 7.1.0.

CURLOPT_REDIR_PROTOCOLS (int)

Un masque de bits de valeurs CURLPROTO_* lesquelles limite les protocoles que cURL peut utiliser dans un transfert qu'il suit dans une redirection lorsque CURLOPT_FOLLOWLOCATION est activé. Cela permet de limiter certains transferts afin qu'ils n'utilisent qu'un sous-ensemble de protocoles lors des redirections. À partir de cURL 7.19.4, par défaut, cURL autorisera tous les protocoles, sauf FILE et SCP. Avant cURL 7.19.4, cURL suivait sans condition tous les protocoles pris en charge. Voir aussi CURLOPT_PROTOCOLS pour les valeurs constantes de protocole. Disponible à partir de cURL 7.19.4 et obsolète à partir de cURL 7.85.0.

CURLOPT_REDIR_PROTOCOLS_STR (int)

Définir sur une string avec une liste séparée par des virgules de noms de protocoles insensibles à la casse (schémas d'URL) à autoriser lors d'une redirection lorsque CURLOPT_FOLLOWLOCATION est activé. Définir sur ALL pour activer tous les protocoles. À partir de cURL 7.65.2, cela par défaut à FTP, FTPS, HTTP et HTTPS. De cURL 7.40.0 à 7.65.1, cela par défaut à tous les protocoles sauf FILE, SCP, SMB et SMBS. Avant cURL 7.40.0, cela par défaut à tous les protocoles sauf FILE et SCP. Les protocoles disponibles sont : DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPE, RTMPS, RTMPT, RTMPTE, RTMPTS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS, WSS. Disponible à partir de PHP 8.3.0 et cURL 7.85.0.

CURLOPT_REFERER (int)

Une string contenant le contenu de l'en-tête Referer: à utiliser dans une requête HTTP. Disponible à partir de cURL 7.1.0.

CURLOPT_REQUEST_TARGET (int)

Une string à utiliser dans la requête à venir au lieu du chemin extrait de l'URL. Disponible à partir de PHP 7.3.0 et cURL 7.55.0.

CURLOPT_RESOLVE (int)

Fournir un array de strings séparés par des deux-points avec des adresses personnalisées pour des paires hôte et port spécifiques dans le format suivant : array( "example.com:80:127.0.0.1", "example2.com:443:127.0.0.2", ) Disponible à partir de cURL 7.21.3.

CURLOPT_RESUME_FROM (int)

L'offset, en octets, pour reprendre un transfert. Cette option accepte toute valeur qui peut être convertie en un int valide. Disponible à partir de cURL 7.1.0.

CURLOPT_RETURNTRANSFER (int)

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

CURLOPT_RTSP_CLIENT_CSEQ (int)

Définit un int avec le numéro CSEQ à émettre pour la prochaine requête RTSP. Utilise si l'application reprend une connexion précédemment interrompue. Le CSEQ s'incrémente à partir de ce nouveau numéro par la suite. Par défaut à 0. Disponible à partir de cURL 7.20.0.

CURLOPT_RTSP_REQUEST (int)

Définit le type de requête RTSP à effectuer. Doit être une des constantes CURL_RTSPREQ_*. Disponible à partir de cURL 7.20.0.

CURLOPT_RTSP_SERVER_CSEQ (int)

Définit un int avec le numéro CSEQ à attendre pour la prochaine requête RTSP du serveur. Cette fonctionnalité (écoute des requêtes du serveur) n'est pas implémentée. Par défaut à 0. Disponible à partir de cURL 7.20.0.

CURLOPT_RTSP_SESSION_ID (int)

Définit un string avec la valeur de l'identifiant de la session RTSP courante pour la poignée. Une fois que cette valeur est définie sur une valeur non-null, cURL renvoie CURLE_RTSP_SESSION_ERROR si l'identifiant reçu du serveur ne correspond pas. Si défini sur null, cURL définit automatiquement l'identifiant la première fois que le serveur le définit dans une réponse. Par défaut à null Disponible à partir de cURL 7.20.0.

CURLOPT_RTSP_STREAM_URI (int)

Définit un string avec l'URI du flux sur lequel opérer. S'il n'est pas définit, cURL définit par défaut l'opération sur les options de serveur génériques en passant * à la place de l'URI du flux RTSP. Lors du travail avec RTSP, CURLOPT_RTSP_STREAM_URI indique quelle URL envoyer au serveur dans l'en-tête de requête tandis que CURLOPT_URL indique où établir la connexion. Disponible à partir de cURL 7.20.0.

CURLOPT_RTSP_TRANSPORT (int)

Définit l'en-tête Transport: pour cette session RTSP. Disponible à partir de cURL 7.20.0.

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) string pour le transfert. Applicable uniquement au 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 à partir de 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 à partir de PHP 7.0.7 et cURL 7.31.0.

CURLOPT_SERVICE_NAME (int)

Un string avec le nom du service d'authentification. Disponible à partir de 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é. Disponible à partir de cURL 7.10.

CURLOPT_SOCKS5_AUTH (int)

CURLAUTH_BASIC, CURLAUTH_GSSAPI, CURLAUTH_NONE. Lorsque plus d'une méthode est définie, cURL interrogera le serveur pour voir quelles méthodes il prend en charge et choisira la meilleure. 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 à partir de PHP 7.3.0 et cURL 7.55.0.

CURLOPT_SOCKS5_GSSAPI_NEC (int)

Définir à 1 pour activer et à 0 pour désactiver l'échange non protégé de la négociation du mode de protection dans le cadre de la négociation GSSAPI. Disponible à partir de cURL 7.19.4.

CURLOPT_SOCKS5_GSSAPI_SERVICE (int)

Définit un string contenant le nom du service SOCKSS. Par défaut à rcmd. Disponible à partir de cURL 7.19.4 et déprécié à partir de cURL 7.49.0. Utiliser CURLOPT_PROXY_SERVICE_NAME à la place.

CURLOPT_SSH_AUTH_TYPES (int)

Un masque de bits composé d'une ou plusieurs des constantes suivantes : CURLSSH_AUTH_PUBLICKEY, CURLSSH_AUTH_PASSWORD, CURLSSH_AUTH_HOST, CURLSSH_AUTH_KEYBOARD, CURLSSH_AUTH_AGENT, CURLSSH_AUTH_ANY. Par défaut, cela correspond à CURLSSH_AUTH_ANY. Disponible à partir de cURL 7.16.1.

CURLOPT_SSH_COMPRESSION (int)

true pour activer, false pour désactiver la compression SSH intégrée. Notez que le serveur peut ignorer cette demande. Par défaut, cela correspond à false. Disponible à partir de PHP 7.3.0 et cURL 7.56.0.

CURLOPT_SSH_HOSTKEYFUNCTION (int)

Un callable qui sera appelé lorsque la vérification de la clé hôte SSH est nécessaire. Le rappel doit avoir la signature suivante :

callback(
    resource $curlHandle,
    int $keyType,
    string $key,
    int $keyLength
): int
curlHandle
Le handle cURL.
keyType
L'un des types de clé CURLKHTYPE_*.
key
La clé à vérifier.
keyLength
La longueur de la clé en octets.
Ce rappel remplace CURLOPT_SSH_KNOWNHOSTS. Disponible à partir de PHP 8.3.0 et cURL 7.84.0.

CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 (int)

Une string contenant 32 chiffres hexadécimaux qui doivent contenir le checksum MD5 de la clé publique de l'hôte distant, et cURL 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 à partir de cURL 7.17.1.

CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256 (int)

Une string avec le hash SHA256 codé 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 à partir de PHP 8.2.0 et cURL 7.80.0.

CURLOPT_SSH_KNOWNHOSTS (int)

Définit le nom du fichier known_host à utiliser qui devrait utiliser le format de fichier OpenSSH pris en charge par libssh2. Disponible à partir de cURL 7.19.6.

CURLOPT_SSH_PRIVATE_KEYFILE (int)

Le nom du fichier de votre clé privée. Si non utilisé, cURL 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 à partir de cURL 7.16.1.

CURLOPT_SSH_PUBLIC_KEYFILE (int)

Le nom du fichier de votre clé publique. Si non utilisé, cURL 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 à partir de cURL 7.16.1.

CURLOPT_SSLCERT (int)

Le nom d'un fichier contenant un certificat au format PEM. Disponible à partir de cURL 7.1.0.

CURLOPT_SSLCERTPASSWD (int)

Le mot de passe requis pour utiliser le certificat CURLOPT_SSLCERT. Disponible à partir de cURL 7.1.0 et déconseillé à partir de cURL 7.17.0.

CURLOPT_SSLCERTTYPE (int)

Une string avec le format du certificat. Les formats pris en charge sont : PEM, DER, ENG, P12. P12 (pour les fichiers encodés en PKCS#12) est disponible à partir d'OpenSSL 0.9.3. Par défaut, c'est PEM. Disponible à partir de cURL 7.9.3.

CURLOPT_SSLCERT_BLOB (int)

Une string avec le certificat client SSL. Disponible à partir de PHP 8.1.0 et cURL 7.71.0.

CURLOPT_SSLENGINE (int)

L'identifiant string pour le moteur crypto de la clé SSL privée spécifiée dans CURLOPT_SSLKEY. Disponible à partir de cURL 7.9.3.

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. Disponible à partir de cURL 7.9.3.

CURLOPT_SSLKEYPASSWD (int)

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

Nota:

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

Disponible à partir de cURL 7.9.3 et déconseillé à partir de cURL 7.17.0.

CURLOPT_SSLKEYTYPE (int)

Le type de clé privée SSL spécifié dans CURLOPT_SSLKEY. Les types de clé pris en charge sont : PEM, DER, ENG. Défaut à PEM. Disponible à partir de cURL 7.9.3.

CURLOPT_SSLKEY_BLOB (int)

Une string clé privée pour le certificat client. Disponible à partir de PHP 8.1.0 et cURL 7.71.0.

CURLOPT_SSLVERSION (int)

Une des constantes suivantes CURL_SSLVERSION_*.

Advertencia

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.

Par défaut, c'est CURL_SSLVERSION_DEFAULT. Disponible à partir de cURL 7.1.0.

CURLOPT_SSL_CIPHER_LIST (int)

Une string séparée par des deux-points des chiffrement à utiliser pour la connexion TLS 1.2 (1.1, 1.0). Disponible à partir de cURL 7.9.

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 à partir de 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 cURL is built to use supports it), which can be used to negotiate http2. Disponible à partir de 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 cURL est compilé pour l'utiliser), ce qui peut être utilisé pour négocier http2. Disponible à partir de PHP 7.0.7 et cURL 7.36.0, et obsolète à partir de cURL 7.86.

CURLOPT_SSL_FALSESTART (int)

true pour activer et false pour désactiver le démarrage anticipé de TLS, qui est un mode où un client TLS commence à envoyer des données d'application avant de vérifier le message Finished du serveur. Disponible à partir de PHP 7.0.7 et cURL 7.42.0.

CURLOPT_SSL_OPTIONS (int)

Définir les options de comportement SSL, qui sont un masque de bits des CURLSSLOPT_* constantes. Par défaut, aucun des bits n'est défini. Disponible à partir de PHP 7.0.7 et cURL 7.25.0.

CURLOPT_SSL_SESSIONID_CACHE (int)

Définir à 0 pour désactiver et à 1 pour activer le cache de session SSL. Par défaut, tous les transferts sont effectués en utilisant le cache activé. Disponible à partir de cURL 7.16.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é à partir de cURL 7.28.1. Disponible à partir de cURL 7.8.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. Défaut à true à partir de cURL 7.10. Paquet par défaut de certificats CA installé à partir de cURL 7.10. Disponible à partir de cURL 7.4.2.

CURLOPT_SSL_VERIFYSTATUS (int)

true pour activer et false pour désactiver la vérification de l'état du certificat. Disponible à partir de PHP 7.0.7 et cURL 7.41.0.

CURLOPT_STDERR (int)

Accepte un descripteur de fichier resource pointant vers un emplacement alternatif pour envoyer les erreurs au lieu de STDERR. Disponible à partir de cURL 7.1.0.

CURLOPT_STREAM_WEIGHT (int)

Définir le poids numérique du flux (un nombre entre 1 et 256). Disponible à partir de 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. Par défaut, c'est false. Disponible à partir de PHP 7.3.0 et cURL 7.54.0.

CURLOPT_TCP_FASTOPEN (int)

true pour activer et false pour désactiver TCP Fast Open. Disponible à partir de 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. Le nombre maximum de sondes peut être défini avec l'option CURLOPT_TCP_KEEPCNT. Disponible à partir de 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 à partir de 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 à partir de cURL 7.25.0.

CURLOPT_TCP_KEEPCNT (int)

Définit le nombre maximum de sondes de maintien de connexion TCP. La valeur par défaut est 9. Disponible à partir de PHP 8.4.0 et cURL 8.9.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. Par défaut, c'est true. Disponible à partir de cURL 7.11.2.

CURLOPT_TELNETOPTIONS (int)

Définit un array de strings à passer aux négociations telnet. Ces variables doivent être au format >option=valeur<. cURL supporte les options TTYPE, XDISPLOC et NEW_ENV. Disponible à partir de cURL 7.7.0.

CURLOPT_TFTP_BLKSIZE (int)

Définit la taille de bloc à utiliser pour la transmission de données TFTP. La plage valide est de 8 à 65464 octets. Par défaut, 512 octets sont utilisés si cette option n'est pas spécifiée. La taille du bloc spécifiée n'est utilisée que si elle est prise en charge par le serveur distant. SI le serveur ne renvoie pas d'accusé de réception d'option ou renvoie un accusé de réception d'option sans taille de bloc, la valeur par défaut de 512 octets est utilisée. Disponible à partir de cURL 7.19.4.

CURLOPT_TFTP_NO_OPTIONS (int)

true pour ne pas envoyer de requêtes d'options TFTP. Par défaut, c'est false. Disponible à partir de PHP 7.0.7 et cURL 7.48.0.

CURLOPT_TIMECONDITION (int)

Définir 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. Disponible à partir de cURL 7.1.0.

CURLOPT_TIMEOUT (int)

Le nombre maximum de secondes à attendre pour les fonctions cURL. Par défaut, c'est 0, ce qui signifie que les fonctions ne dépassent jamais le temps d'attente pendant le transfert. Disponible à partir de cURL 7.1.0.

CURLOPT_TIMEOUT_MS (int)

Le nombre maximum de millisecondes à attendre pour les fonctions cURL s'éxécutent. Si cURL 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. Par défaut, c'est 0, ce qui signifie que les fonctions ne dépassent jamais le temps d'attente pendant le transfert. Disponible à partir de cURL 7.16.2.

CURLOPT_TIMEVALUE (int)

Le temps en secondes depuis le 1er janvier 1970. Le temps sera utilisé par CURLOPT_TIMECONDITION. Par défaut, c'est 0. Disponible à partir de cURL 7.1.0.

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 à partir de PHP 7.3.0 et cURL 7.59.0

CURLOPT_TLS13_CIPHERS (int)

Une string avec une liste de chiffrement séparée par des deux-points à utiliser pour la connexion TLS 1.3. Cette option est actuellement utilisée uniquement lorsque cURL est compilé avec OpenSSL 1.1.1 ou version ultérieure. Lors de l'utilisation d'un autre backend SSL, les suites de chiffrement TLS 1.3 peuvent être définies avec l'option CURLOPT_SSL_CIPHER_LIST. Disponible à partir de PHP 7.3.0 et cURL 7.61.0.

CURLOPT_TLSAUTH_PASSWORD (int)

Définit un mot de passe à utiliser pour l'authentification spécifiée avec l'option CURLOPT_TLSAUTH_TYPE. Requiert que l'option CURLOPT_TLSAUTH_USERNAME soit également définie. Cette fonctionnalité repose sur TLS SRP qui ne fonctionne pas avec TLS 1.3. Disponible à partir de cURL 7.21.4.

CURLOPT_TLSAUTH_TYPE (int)

Définit une string avec la méthode d'authentification TLS. La méthode supportée est SRP (authentification TLS Secure Remote Password). Disponible à partir de cURL 7.21.4.

CURLOPT_TLSAUTH_USERNAME (int)

Définit un string avec le nom d'utilisateur à utiliser pour la méthode d'authentification TLS spécifié avec l'option CURLOPT_TLSAUTH_TYPE. Requiert que l'option CURLOPT_TLSAUTH_PASSWORD soit également définie. Cette fonctionnalité repose sur TLS SRP qui ne fonctionne pas avec TLS 1.3. Disponible à partir de cURL 7.21.4.

CURLOPT_TRANSFER_ENCODING (int)

Définit à 1 pour activer et à 0 pour désactiver la demande de Transfer Encoding compressé dans la requête HTTP sortante. Si le serveur répond avec un Transfer Encoding compressé, cURL va automatiquement le décompresser à la réception. Par défaut à 0. Disponible à partir de cURL 7.21.6.

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. Par défaut, c'est false. Disponible à partir de cURL 7.1.1.

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é. Définir sur null pour désactiver. Par défaut, c'est null. Disponible à partir de 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é. Par défaut, c'est false. Disponible à partir de cURL 7.10.4.

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. Par défaut, c'est CURL_UPKEEP_INTERVAL_DEFAULT qui est actuellement 60 secondes. Disponible à partir de PHP 8.2.0 et cURL 7.62.0.

CURLOPT_UPLOAD (int)

true pour préparer et effectuer un téléchargement. Par défaut, c'est false. Disponible à partir de cURL 7.1.0.

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 à partir de 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(). Disponible à partir de cURL 7.1.0.

CURLOPT_USE_SSL (int)

Définit le niveau de SSL/TLS souhaité pour le transfert lors de l'utilisation de FTP, SMTP, POP3, IMAP, etc. Ce sont tous des protocoles qui commencent en texte clair et sont "améliorés" en SSL en utilisant la commande STARTTLS. Définir sur l'une des constantes CURLUSESSL_*. Disponible à partir de cURL 7.17.0.

CURLOPT_USERAGENT (int)

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

CURLOPT_USERNAME (int)

Le nom d'utilisateur à utiliser dans l'authentification. Disponible à partir de 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. Disponible à partir de cURL 7.1.0.

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. Par défaut, c'est false. Disponible à partir de cURL 7.1.0.

CURLOPT_WILDCARDMATCH (int)

Définir à 1 pour transférer plusieurs fichiers selon un modèle de nom de fichier. Le patterne peut être spécifié en tant que partie de l'option CURLOPT_URL, en utilisant un modèle fnmatch-like (Shell Pattern Matching) dans la dernière partie de l'URL (nom de fichier). Disponible à partir de cURL 7.21.0.

CURLOPT_WRITEFUNCTION (int)

Un callable avec la signature suivante :

callback(resource $curlHandle, string $data): int
curlHandle
Le gestionnaire cURL.
data
Les données à écrire.
Les données doivent être enregistrées par le callback et le callback doit renvoyer le nombre exact d'octets écrits ou le transfert sera annulé avec une erreur. Disponible à partir de cURL 7.1.0.

CURLOPT_WRITEHEADER (int)

Accepte un gestionnaire de fichier resource vers le fichier dans lequel la partie en-tête du transfert est écrite. Disponible à partir de cURL 7.1.0.

CURLOPT_WS_OPTIONS (int)

Accepte un masque de bits pour définir les options de comportement WebSocket. La seule option disponible est CURLWS_RAW_MODE. Par défaut, c'est 0. Disponible à partir de PHP 8.3.0 et cURL 7.86.0.

CURLOPT_XFERINFOFUNCTION (int)

Un callable avec la signature suivante :

callback(
    resource $curlHandle,
    int $bytesToDownload,
    int $bytesDownloaded,
    int $bytesToUpload,
    int $bytesUploaded
): int
curlHandle
Le gestionnaire cURL.
bytesToDownload
Le nombre total de bytes qui devraient être téléchargés lors de ce transfert.
bytesDownloaded
Le nombre de bytes téléchargés jusqu'à présent.
bytesToUpload
Le nombre total de bytes qui devraient être téléchargés lors de ce transfert.
bytesUploaded
Le nombre de bytes téléchargés jusqu'à présent.
Retournez 1 pour annuler le transfert et définir une erreur CURLE_ABORTED_BY_CALLBACK. Disponible à partir de PHP 8.2.0 et cURL 7.32.0.

CURLOPT_SERVER_RESPONSE_TIMEOUT (int)

Un délai d'attente en secondes que cURL attendra pour une réponse d'un serveur FTP, SFTP, IMAP, SCP, SMTP, ou un serveur POP3. Cette option remplace l'option existante CURLOPT_FTP_RESPONSE_TIMEOUT qui est obsolète à partir de cURL 7.85.0. Disponible à partir de PHP 8.4.0.

CURLOPT_XOAUTH2_BEARER (int)

Spécife le jeton d'accès OAuth 2.0. Définissez sur null pour désactiver. Par défaut, c'est null. Disponible à partir de PHP 7.0.7 et cURL 7.33.0.

CURLOPT_PREREQFUNCTION (int)

Une callable avec la signature suivante qui est appelée après l'établissement de la connexion, mais avant que la charge utile de la requête (par exemple, la requête GET/POST/DELETE d'une connexion HTTP) soit envoyée, et qui peut être utilisée pour annuler ou autoriser la connexion en fonction de l'adresse IP source et des numéros de port source et de destination :

callback(
    CurlHandle $curlHandle,
    string $destination_ip,
    string $local_ip,
    int $destination_port,
    int $local_port
): int
curlHandle
Le handle cURL.
destination_ip
L'adresse IP principale du serveur distant établi avec cette connexion. Pour FTP, il s'agit de l'IP de la connexion de contrôle. Les adresses IPv6 sont représentées sans crochets.
local_ip
L'adresse IP d'origine pour cette connexion. Les adresses IPv6 sont représentées sans crochets.
destination_port
Le numéro de port principal sur le serveur distant établi avec cette connexion. Pour FTP, il s'agit du port de la connexion de contrôle. Cela peut être un numéro de port TCP ou UDP en fonction du protocole.
local_port
Le numéro de port d'origine pour cette connexion. Cela peut être un numéro de port TCP ou UDP en fonction du protocole.
Retournez CURL_PREREQFUNC_OK pour autoriser la requête, ou CURL_PREREQFUNC_ABORT pour annuler le transfert. Disponible à partir de PHP 8.4.0 et cURL 7.80.0.

CURLOPT_DEBUGFUNCTION (int)

Disponible à partir de PHP 8.4.0. Cette option nécessite l'option CURLOPT_VERBOSE activée. Une callable pour remplacer la sortie verbose standard de cURL. Ce callback est appelé à différentes étapes de la requête avec des informations de débogage détaillées. Le callback doit correspondre à la signature suivante :

callback(CurlHandle $curlHandle, int $type, string $data): void
curlHandle
Le handle cURL.
type
L'un des constantes suivantes indiquant le type de la valeur data :
Constantes Descripción
CURLINFO_TEXT (int) Texte informatif.
CURLINFO_HEADER_IN (int) Données d'en-tête (ou semblables aux en-têtes) reçues du pair.
CURLINFO_HEADER_OUT (int) Données d'en-tête (ou semblables aux en-têtes) envoyées au pair.
CURLINFO_DATA_IN (int) Données de protocole non traitées reçues du pair. Même si les données sont encodées ou compressées, elles ne sont pas fournies décodées ni décompressées à ce callback.
CURLINFO_DATA_OUT (int) Données de protocole envoyées au pair.
CURLINFO_SSL_DATA_IN (int) Données SSL/TLS (binaires) reçues du pair.
CURLINFO_SSL_DATA_OUT (int) Données SSL/TLS (binaires) envoyées au pair.
data
Données de débogage détaillées du type indiqué par le paramètre type.

curl_share_setopt()
Constantes Descripción
CURL_LOCK_DATA_CONNECT (int) Comparte/descomparte la conexión. Disponible a partir de PHP 7.3.0 y cURL 7.10.3.
Comparte/descomparte los datos de cookie. Disponible a partir de cURL 7.10.3.
CURL_LOCK_DATA_DNS (int) Comparte/descomparte la caché DNS. Es de notar que cuando se utilizan múltiples gestores cURL, todos los gestores añadidos al gestor múltiple compartirán la caché DNS por omisión. Disponible a partir de cURL 7.10.3.
CURL_LOCK_DATA_PSL (int) Comparte/descomparte la lista de sufijos públicos. Disponible a partir de PHP 7.3.0 y cURL 7.61.0.
CURL_LOCK_DATA_SSL_SESSION (int) Comparte/descomparte los identificadores de sesión SSL, reduciendo el tiempo pasado en la gestión SSL al reconectar al mismo servidor. Es de notar que los identificadores de sesión SSL son reutilizados en el mismo gestor por omisión. Disponible a partir de cURL 7.10.3.
CURLSHOPT_NONE (int) Disponible a partir de cURL 7.10.3.
CURLSHOPT_SHARE (int) Especifica un tipo de datos a compartir. Disponible a partir de cURL 7.10.3.
CURLSHOPT_UNSHARE (int) Especifica un tipo de datos que ya no será compartido. Disponible a partir de cURL 7.10.3.
curl_getinfo()
Constantes Descripción
CURLINFO_APPCONNECT_TIME (int) El tiempo en segundos que ha sido necesario para establecer la conexión SSL/SSH con el host remoto.
CURLINFO_APPCONNECT_TIME_T (int) El tiempo en microsegundos que ha sido necesario para establecer la conexión SSL/SSH con el host remoto. Disponible a partir de PHP 7.3.0 y cURL 7.61.0
CURLINFO_CAINFO (int) Ruta nativa del certificado CA. Disponible a partir de PHP 8.3.0 y cURL 7.84.0
CURLINFO_CAPATH (int) Ruta nativa del CA. Disponible a partir de PHP 8.3.0 y cURL 7.84.0
CURLINFO_CERTINFO (int) La cadena del certificado TLS. TLS certificate chain
CURLINFO_CONDITION_UNMET (int) Información sobre la condición temporal no cumplida.
CURLINFO_CONNECT_TIME (int) El tiempo en segundos que ha sido necesario para establecer la conexión.
CURLINFO_CONNECT_TIME_T (int) El tiempo total, en microsegundos, desde el inicio hasta que la conexión con el host remoto (o el proxy) se haya completado. Disponible a partir de PHP 7.3.0 y cURL 7.61.0
CURLINFO_CONTENT_LENGTH_DOWNLOAD (int) La longitud del contenido descargado, leída desde el campo Content-Length:
CURLINFO_CONTENT_LENGTH_DOWNLOAD_T (int) El contenido de la longitud de la descarga. Es el valor leído desde el campo Content-Length:. -1 si el tamaño no es conocido. Disponible a partir de PHP 7.3.0 y cURL 7.55.0
CURLINFO_CONTENT_LENGTH_UPLOAD (int) El tamaño especificado del envío.
CURLINFO_CONTENT_LENGTH_UPLOAD_T (int) El tamaño especificado del envío. -1 si el tamaño no es conocido. Disponible a partir de PHP 7.3.0 y cURL 7.55.0
CURLINFO_CONTENT_TYPE (int) El Content-Type: del documento solicitado. NULL indica que el servidor no ha enviado un encabezado Content-Type: válido.
CURLINFO_COOKIELIST (int) Las cookies conocidas.
CURLINFO_EFFECTIVE_METHOD (int) Devuelve el último método HTTP utilizado.
CURLINFO_EFFECTIVE_URL (int) La última URL efectiva.
CURLINFO_FILETIME (int) El tiempo remoto del documento recuperado, con CURLOPT_FILETIME activado; si -1 es devuelto, el tiempo del documento es desconocido.
CURLINFO_FILETIME_T (int) El tiempo remoto del documento recuperado (como un timestamp Unix), una alternativa a CURLINFO_FILETIME para permitir a los sistemas con variables largas de 32 bits extraer fechas fuera del rango de tiempo de 32 bits. Disponible a partir de PHP 7.3.0 y cURL 7.59.0
CURLINFO_FTP_ENTRY_PATH (int) La ruta de entrada en el servidor FTP.
CURLINFO_HEADER_OUT (int) La cadena de solicitud enviada. Para que esto funcione, añada la opción CURLINFO_HEADER_OUT al manejador llamando a curl_setopt().
CURLINFO_HEADER_SIZE (int) El tamaño total de todos los encabezados recibidos.
CURLINFO_HTTPAUTH_AVAIL (int) La máscara de bits que indica el método de autenticación disponible(s) según la respuesta anterior.
CURLINFO_HTTP_CODE (int) El último código de respuesta. A partir de cURL 7.10.8, es un alias heredado de CURLINFO_RESPONSE_CODE.
CURLINFO_HTTP_CONNECTCODE (int) El código de respuesta CONNECT.
CURLINFO_HTTP_VERSION (int) La versión utilizada en la última conexión HTTP. El valor de retorno será una de las constantes CURL_HTTP_VERSION_* definidas o 0 si la versión no puede ser determinada. Disponible a partir de PHP 7.3.0 y cURL 7.50.0
CURLINFO_LASTONE (int) El último valor de enumeración en la enumeración CURLINFO subyacente en libcurl.
CURLINFO_LOCAL_IP (int) La dirección IP local (fuente) de la última conexión.
CURLINFO_LOCAL_PORT (int) El puerto local (fuente) de la última conexión.
CURLINFO_NAMELOOKUP_TIME (int) El tiempo en segundos hasta que la resolución del nombre esté completa.
CURLINFO_NAMELOOKUP_TIME_T (int) El tiempo en microsegundos hasta que la resolución del nombre esté completa. Disponible a partir de PHP 7.3.0 y cURL 7.61.0
CURLINFO_NUM_CONNECTS (int) El número de conexiones que curl ha tenido que crear para realizar la transferencia anterior.
CURLINFO_OS_ERRNO (int) El número de error del fallo de conexión. El número es específico del sistema operativo y del sistema.
CURLINFO_PRETRANSFER_TIME (int) El tiempo en segundos desde el inicio hasta justo antes de que la transferencia de fichero comience.
CURLINFO_PRETRANSFER_TIME_T (int) El tiempo transcurrido desde el inicio hasta que la transferencia de fichero comience, en microsegundos. Disponible a partir de PHP 7.3.0 y cURL 7.61.0
CURLINFO_PRIMARY_IP (int) La dirección IP de la última conexión.
CURLINFO_PRIMARY_PORT (int) El puerto de destino de la última conexión.
CURLINFO_PRIVATE (int) Los datos privados asociados a esta conexión cURL, previamente definidos con la opción CURLOPT_PRIVATE de curl_setopt().
CURLINFO_PROTOCOL (int) El protocolo utilizado en la última conexión HTTP. El valor de retorno será exactamente uno de los valores CURLPROTO_*. Disponible a partir de PHP 7.3.0 y cURL 7.52.0
CURLINFO_PROXYAUTH_AVAIL (int) La máscara de bits que indica el método de autenticación de proxy disponible según la respuesta anterior.
CURLINFO_PROXY_ERROR (int) El detalle del código de error (SOCKS) proxy cuando la última transferencia ha devuelto un error CURLE_PROXY. El valor devuelto será exactamente uno de los valores CURLPX_*. El código de error será CURLPX_OK si ningún código de respuesta estaba disponible. Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLINFO_PROXY_SSL_VERIFYRESULT (int) El resultado de la verificación del certificado que ha sido solicitada (usando la opción CURLOPT_PROXY_SSL_VERIFYPEER). Utilizado únicamente para proxies HTTPS. Disponible a partir de PHP 7.3.0 y cURL 7.52.0
CURLINFO_REDIRECT_COUNT (int) El número de redirecciones, con la opción CURLOPT_FOLLOWLOCATION activada.
CURLINFO_REDIRECT_TIME (int) El tiempo en segundos de todas las etapas de redirección antes de que la transacción final comience, con la opción CURLOPT_FOLLOWLOCATION activada.
CURLINFO_REDIRECT_TIME_T (int) El tiempo total, en microsegundos, que ha sido necesario para todas las etapas de redirección, incluyendo la resolución de nombre, la conexión, el pre-transferencia y la transferencia antes de que la transacción final comience. Disponible a partir de PHP 7.3.0 y cURL 7.61.0
CURLINFO_REDIRECT_URL (int) Con la opción CURLOPT_FOLLOWLOCATION desactivada: URL de redirección encontrada en la última transacción, que debería ser solicitada manualmente después. Con la opción CURLOPT_FOLLOWLOCATION activada: está vacía. La URL de redirección en este caso está disponible en CURLINFO_EFFECTIVE_URL.
CURLINFO_REFERER (int) El encabezado Referer. Disponible a partir de PHP 8.2.0 y cURL 7.76.0
CURLINFO_REQUEST_SIZE (int) El tamaño total de las solicitudes emitidas, actualmente únicamente para las solicitudes HTTP.
CURLINFO_RESPONSE_CODE (int) El último código de respuesta. Disponible a partir de cURL 7.10.8
CURLINFO_RETRY_AFTER (int) La información del encabezado Retry-After, o cero si no había un encabezado válido. Disponible a partir de PHP 8.2.0 y cURL 7.66.0
CURLINFO_RTSP_CLIENT_CSEQ (int) La próxima secuencia CSeq del cliente RTSP.
CURLINFO_RTSP_CSEQ_RECV (int) La recepción CSeq RTSP reciente.
CURLINFO_RTSP_SERVER_CSEQ (int) La próxima secuencia CSeq del servidor RTSP.
CURLINFO_RTSP_SESSION_ID (int) El ID de sesión RTSP.
CURLINFO_SCHEME (int) El esquema de URL utilizado para la última conexión. Disponible a partir de PHP 7.3.0 y cURL 7.52.0
CURLINFO_SIZE_DOWNLOAD (int) El número total de octetos descargados.
CURLINFO_SIZE_DOWNLOAD_T (int) El número total de octetos descargados. El número es únicamente para la última transferencia y será reiniciado para cada nueva transferencia. Disponible a partir de PHP 7.3.0 y cURL 7.50.0
CURLINFO_SIZE_UPLOAD (int) El número total de octetos subidos.
CURLINFO_SIZE_UPLOAD_T (int) El número total de octetos subidos. Disponible a partir de PHP 7.3.0 y cURL 7.50.0
CURLINFO_SPEED_DOWNLOAD (int) La velocidad media de descarga.
CURLINFO_SPEED_DOWNLOAD_T (int) La velocidad media de descarga en octetos/segundo que curl ha medido para la descarga completa. Disponible a partir de PHP 7.3.0 y cURL 7.50.0
CURLINFO_SPEED_UPLOAD (int) La velocidad media de subida.
CURLINFO_SPEED_UPLOAD_T (int) La velocidad media de subida en octetos/segundo que curl ha medido para la subida completa. Disponible a partir de PHP 7.3.0 y cURL 7.50.0
CURLINFO_SSL_ENGINES (int) Los motores de criptografía OpenSSL soportados.
CURLINFO_SSL_VERIFYRESULT (int) El resultado de la verificación del certificado SSL solicitada definiendo CURLOPT_SSL_VERIFYPEER.
CURLINFO_STARTTRANSFER_TIME (int) El tiempo en segundos hasta que el primer octeto esté a punto de ser transferido.
CURLINFO_STARTTRANSFER_TIME_T (int) El tiempo, en microsegundos, que ha sido necesario desde el inicio hasta que el primer octeto sea recibido. Disponible a partir de PHP 7.3.0 y cURL 7.61.0
CURLINFO_TOTAL_TIME (int) El tiempo total en segundos para la última transferencia.
CURLINFO_TOTAL_TIME_T (int) El tiempo total en microsegundos para la última transferencia, incluyendo la resolución de nombre, la conexión TCP, etc. Disponible a partir de PHP 7.3.0 y cURL 7.61.0
CURLINFO_POSTTRANSFER_TIME_T (int) Tiempo transcurrido desde el inicio hasta el envío del último octeto, en microsegundos. Disponible a partir de PHP 8.4.0 y cURL 8.10.0.
curl_multi_setopt()
Constantes Descripción
CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE (int) Especifica el umbral de longitud de fragmento para el pipelining en bytes. Disponible a partir de PHP 7.0.7 y cURL 7.30.0
CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE (int) Especifica el umbral de tamaño de penalización de pipelining en bytes. Disponible a partir de PHP 7.0.7 y cURL 7.30.0
CURLMOPT_MAXCONNECTS (int) Especifica la cantidad máxima de conexiones abiertas simultáneamente que libcurl puede almacenar en caché. Por omisión, el tamaño se ampliará para contener cuatro veces el número de gestores añadidos a través de curl_multi_add_handle(). Cuando la caché está llena, cURL cierra la más antigua en la caché para evitar que el número de conexiones abiertas aumente. Disponible a partir de cURL 7.16.3.
CURLMOPT_MAX_CONCURRENT_STREAMS (int) Especifica el número máximo de streams simultáneos para las conexiones que cURL debería soportar en conexiones que utilizan HTTP/2. Los valores válidos van de 1 a 2147483647 (2^31 - 1). El valor pasado aquí será respetado en función de otras propiedades de los recursos del sistema. Por omisión, es 100. Disponible a partir de PHP 8.2.0 y cURL 7.67.0.
CURLMOPT_MAX_HOST_CONNECTIONS (int) Especifica el número máximo de conexiones a un solo host. Disponible a partir de PHP 7.0.7 y cURL 7.30.0
CURLMOPT_MAX_PIPELINE_LENGTH (int) Especifica el número máximo de solicitudes en un pipeline. Disponible a partir de PHP 7.0.7 y cURL 7.30.0
CURLMOPT_MAX_TOTAL_CONNECTIONS (int) Especifica el número máximo de conexiones abiertas simultáneamente. Disponible a partir de PHP 7.0.7 y cURL 7.30.0
CURLMOPT_PIPELINING (int) Pasar 1 para activar o 0 para desactivar. Activar el pipelining en un gestor múltiple hará que intente realizar el pipelining HTTP tanto como sea posible para las transferencias que utilizan este gestor. Esto significa que añadir una segunda solicitud que puede utilizar una conexión ya existente "pipe" la segunda solicitud en la misma conexión. A partir de cURL 7.43.0, el valor es una máscara de bits, y pasar 2 intentará multiplexar el nuevo transferencia en una conexión HTTP/2 existente. Pasar 3 indica a cURL solicitar el pipelining y el multiplexado independientemente uno del otro. A partir de cURL 7.62.0, establecer el bit de pipelining no tiene ningún efecto. En lugar de literales enteros, las constantes CURLPIPE_* también pueden ser utilizadas. Disponible a partir de cURL 7.16.0.
CURLMOPT_PUSHFUNCTION (int)

Pasar una fermeture que será registrada para gestionar las poussées del servidor y debe tener la siguiente firma:

pushfunction(resource $parent_ch, resource $pushed_ch, array $headers): int
parent_ch
El gestor parental cURL (la solicitud que el cliente ha hecho).
pushed_ch
Un nuevo gestor cURL para la solicitud poussée.
headers
Los encabezados de la promesa de poussée.
La función push debe devolver ya sea CURL_PUSH_OK si puede gestionar la poussée, o CURL_PUSH_DENY para rechazarla. Disponible a partir de PHP 7.1.0 y cURL 7.44.0

Constantes de protocolo cURL
Constantes Descripción
CURLPROTO_ALL (int) Disponible a partir de cURL 7.19.4.
CURLPROTO_DICT (int) Disponible a partir de cURL 7.19.4.
CURLPROTO_FILE (int) Disponible a partir de cURL 7.19.4.
CURLPROTO_FTP (int) Disponible a partir de cURL 7.19.4.
CURLPROTO_FTPS (int) Disponible a partir de cURL 7.19.4.
CURLPROTO_GOPHER (int) Disponible a partir de cURL 7.21.2.
CURLPROTO_HTTP (int) Disponible a partir de cURL 7.19.4.
CURLPROTO_HTTPS (int) Disponible a partir de cURL 7.19.4.
CURLPROTO_IMAP (int) Disponible a partir de cURL 7.20.0.
CURLPROTO_IMAPS (int) Disponible a partir de cURL 7.20.0.
CURLPROTO_LDAP (int) Disponible a partir de cURL 7.19.4.
CURLPROTO_LDAPS (int) Disponible a partir de cURL 7.19.4.
CURLPROTO_MQTT (int) Disponible a partir de PHP 8.2.0 y cURL 7.71.0.
CURLPROTO_POP3 (int) Disponible a partir de cURL 7.20.0.
CURLPROTO_POP3S (int) Disponible a partir de cURL 7.20.0.
CURLPROTO_RTMP (int) Disponible a partir de cURL 7.21.0.
CURLPROTO_RTMPE (int) Disponible a partir de cURL 7.21.0.
CURLPROTO_RTMPS (int) Disponible a partir de cURL 7.21.0.
CURLPROTO_RTMPT (int) Disponible a partir de cURL 7.21.0.
CURLPROTO_RTMPTE (int) Disponible a partir de cURL 7.21.0.
CURLPROTO_RTMPTS (int) Disponible a partir de cURL 7.21.0.
CURLPROTO_RTSP (int) Disponible a partir de cURL 7.20.0.
CURLPROTO_SCP (int) Disponible a partir de cURL 7.19.4.
CURLPROTO_SFTP (int) Disponible a partir de cURL 7.19.4.
CURLPROTO_SMB (int) Disponible a partir de PHP 7.0.7 y cURL 7.40.0.
CURLPROTO_SMBS (int) Disponible a partir de PHP 7.0.7 y cURL 7.40.0.
CURLPROTO_SMTP (int) Disponible a partir de cURL 7.20.0.
CURLPROTO_SMTPS (int) Disponible a partir de cURL 7.20.0.
CURLPROTO_TELNET (int) Disponible a partir de cURL 7.19.4.
CURLPROTO_TFTP (int) Disponible a partir de cURL 7.19.4.
Constantes de errores cURL
Constantes Descripción
CURLE_ABORTED_BY_CALLBACK (int) Abandonado por la función de retrollamada. Una función de retrollamada ha devuelto "abort" a libcurl.
CURLE_BAD_CALLING_ORDER (int)
CURLE_BAD_CONTENT_ENCODING (int) Codificación de contenido no reconocida.
CURLE_BAD_DOWNLOAD_RESUME (int) La descarga no pudo ser reanudada porque el desplazamiento especificado estaba fuera de los límites del fichero.
CURLE_BAD_FUNCTION_ARGUMENT (int) Una función fue llamada con un argumento incorrecto.
CURLE_BAD_PASSWORD_ENTERED (int)
CURLE_COULDNT_CONNECT (int) Fallo en la conexión al host o al proxy.
CURLE_COULDNT_RESOLVE_HOST (int) Resolución del host imposible. El host remoto no pudo ser resuelto.
CURLE_COULDNT_RESOLVE_PROXY (int) Resolución del proxy imposible. El proxy dado no pudo ser resuelto.
CURLE_FAILED_INIT (int) El código de inicialización ha fallado. Probablemente se trate de un error interno o de un problema de recursos donde algo fundamental no pudo ser hecho al momento de la inicialización.
CURLE_FILESIZE_EXCEEDED (int) Se ha superado el tamaño máximo del fichero.
CURLE_FILE_COULDNT_READ_FILE (int) Un fichero dado con FILE:// no pudo ser abierto. Lo más probable es que la ruta del fichero no corresponda a un fichero existente o debido a la falta de permisos de fichero adecuados.
CURLE_FTP_ACCESS_DENIED (int)
CURLE_FTP_BAD_DOWNLOAD_RESUME (int)
CURLE_FTP_CANT_GET_HOST (int) Se ha producido un error interno al buscar el host utilizado para la nueva conexión.
CURLE_FTP_CANT_RECONNECT (int)
CURLE_FTP_COULDNT_GET_SIZE (int)
CURLE_FTP_COULDNT_RETR_FILE (int) Esto fue una respuesta inesperada a una orden 'RETR' o una transferencia de cero octetos completa.
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 orden FTP REST ha devuelto un error. Esto no debería ocurrir nunca si el servidor está sano.
CURLE_FTP_PARTIAL_FILE (int)
CURLE_FTP_PORT_FAILED (int) La orden FTP PORT ha devuelto un error. Esto ocurre principalmente cuando la dirección especificada para libcurl no es suficientemente buena. Ver CURLOPT_FTPPORT.
CURLE_FTP_QUOTE_ERROR (int)
CURLE_FTP_SSL_FAILED (int)
CURLE_FTP_USER_PASSWORD_INCORRECT (int)
CURLE_FTP_WEIRD_227_FORMAT (int) Los servidores FTP devuelven una línea 227 en respuesta a una orden PASV. Si libcurl falla al analizar esta línea, este código de retorno es devuelto.
CURLE_FTP_WEIRD_PASS_REPLY (int) Después de enviar la contraseña FTP al servidor, libcurl espera una respuesta apropiada. Este código de error indica que se ha devuelto un código inesperado.
CURLE_FTP_WEIRD_PASV_REPLY (int) Libcurl no ha podido obtener un resultado sensato del servidor en respuesta a una orden PASV o EPSV. El servidor es defectuoso.
CURLE_FTP_WEIRD_SERVER_REPLY (int) El servidor ha devuelto datos que libcurl no ha podido analizar. Este código de error es conocido como CURLE_WEIRD_SERVER_REPLY a partir de cURL 7.51.0.
CURLE_FTP_WEIRD_USER_REPLY (int)
CURLE_FTP_WRITE_ERROR (int)
CURLE_FUNCTION_NOT_FOUND (int) La función no ha sido encontrada. Una función zlib requerida no ha sido encontrada.
CURLE_GOT_NOTHING (int) Nada ha sido devuelto por el servidor, y en las circunstancias, no recibir nada es considerado como un error.
CURLE_HTTP_NOT_FOUND (int)
CURLE_HTTP_PORT_FAILED (int)
CURLE_HTTP_POST_ERROR (int) Es un error extraño que ocurre principalmente debido a una confusión interna.
CURLE_HTTP_RANGE_ERROR (int)
CURLE_HTTP_RETURNED_ERROR (int) Esto se devuelve si CURLOPT_FAILONERROR está definido a true y que el servidor HTTP devuelve un código de error superior o igual a 400.
CURLE_LDAP_CANNOT_BIND (int) LDAP no puede enlazarse. La operación de enlace LDAP ha fallado.
CURLE_LDAP_INVALID_URL (int)
CURLE_LDAP_SEARCH_FAILED (int) La búsqueda LDAP ha fallado.
CURLE_LIBRARY_NOT_FOUND (int)
CURLE_MALFORMAT_USER (int)
CURLE_OBSOLETE (int)
CURLE_OK (int) Todo está bien. Proceda como de costumbre.
CURLE_OPERATION_TIMEDOUT (int) Operación expirada. El período de tiempo especificado ha sido alcanzado según las condiciones.
CURLE_OPERATION_TIMEOUTED (int)
CURLE_OUT_OF_MEMORY (int) Una solicitud de asignación de memoria ha fallado.
CURLE_PARTIAL_FILE (int) Una transferencia de fichero ha sido más corta o más larga de lo esperado. Esto ocurre cuando el servidor señala primero un tamaño de transferencia esperado, y luego proporciona datos que no coinciden con el tamaño dado anteriormente.
CURLE_PROXY (int) Error de conexión al proxy. CURLINFO_PROXY_ERROR proporciona detalles adicionales sobre el problema específico. Disponible a partir de PHP 8.2.0 y cURL 7.73.0
CURLE_READ_ERROR (int) Hubo un problema al leer un fichero local o un error devuelto por la función de retrollamada de lectura.
CURLE_RECV_ERROR (int) Fallo en la recepción de los datos de red.
CURLE_SEND_ERROR (int) Fallo en el envío de los datos de red.
CURLE_SHARE_IN_USE (int)
CURLE_SSH (int) Se ha producido un error no especificado durante la sesión SSH. Disponible a partir de cURL 7.16.1.
CURLE_SSL_CACERT (int)
CURLE_SSL_CACERT_BADFILE (int) Problema de lectura del certificado SSL CA.
CURLE_SSL_CERTPROBLEM (int) Problema con el cliente de certificado local.
CURLE_SSL_CIPHER (int) Imposible utilizar el cifrado especificado.
CURLE_SSL_CONNECT_ERROR (int) Se ha producido un problema en algún lugar de la gestión SSL/TLS. La lectura del mensaje en el búfer de error proporciona más detalles sobre el problema. Podría ser de certificados (formatos de ficheros, rutas, permisos), contraseñas y otros.
CURLE_SSL_ENGINE_NOTFOUND (int) El motor de cifrado especificado no ha sido encontrado.
CURLE_SSL_ENGINE_SETFAILED (int) Fallo en la definición del motor de cifrado seleccionado como motor por defecto.
CURLE_SSL_PEER_CERTIFICATE (int)
CURLE_SSL_PINNEDPUBKEYNOTMATCH (int) Fallo en la coincidencia de la clave pública especificada con CURLOPT_PINNEDPUBLICKEY.
CURLE_TELNET_OPTION_SYNTAX (int)
CURLE_TOO_MANY_REDIRECTS (int) Demasiadas redirecciones. Al seguir las redirecciones, libcurl ha alcanzado el número máximo. El límite puede ser definido con CURLOPT_MAXREDIRS.
CURLE_UNKNOWN_TELNET_OPTION (int)
CURLE_UNSUPPORTED_PROTOCOL (int) La URL pasada a libcurl utilizó un protocolo que libcurl no soporta. El problema podría ser una opción de compilación que no ha sido utilizada, una cadena de protocolo mal escrita o simplemente un protocolo para el cual libcurl no tiene código.
CURLE_URL_MALFORMAT (int) La URL no estaba correctamente formateada.
CURLE_URL_MALFORMAT_USER (int)
CURLE_WEIRD_SERVER_REPLY (int) El servidor ha devuelto datos que libcurl no ha podido analizar. Este código de error era conocido como CURLE_FTP_WEIRD_SERVER_REPLY antes de cURL 7.51.0. Disponible a partir de PHP 7.3.0 y cURL 7.51.0
CURLE_WRITE_ERROR (int) Se ha producido un error al escribir los datos recibidos en un fichero local, o un error ha sido devuelto a libcurl desde una función de retrollamada de escritura.
curl_multi_* constantes de estado
Constantes Descripción
CURLM_ADDED_ALREADY (int) Un gestor fácil ya añadido a un gestor múltiple ha sido intentado ser añadido una segunda vez. Disponible a partir de cURL 7.32.1.
CURLM_BAD_EASY_HANDLE (int) Un gestor fácil no era bueno/válido. Esto podría significar que no se trata de un gestor fácil en absoluto, o eventualmente que el gestor ya está siendo utilizado por este o por otro gestor múltiple. Disponible a partir de cURL 7.9.6.
CURLM_BAD_HANDLE (int) El gestor pasado no es un gestor múltiple válido. Disponible a partir de cURL 7.9.6.
CURLM_CALL_MULTI_PERFORM (int) Desde cURL 7.20.0, esta constante no se utiliza. Antes de cURL 7.20.0, este estado podía ser devuelto por curl_multi_exec() cuando curl_multi_select() o una función similar era llamada antes de que devolviera otra constante. Disponible a partir de cURL 7.9.6.
CURLM_INTERNAL_ERROR (int) Error interno de libcurl.
CURLM_OK (int) Ningún error. Disponible a partir de cURL 7.9.6.
CURLM_OUT_OF_MEMORY (int) No hay suficiente memoria al procesar los gestores múltiples. Disponible a partir de cURL 7.9.6.
curl_pause()
Constantes Descripción
CURLPAUSE_ALL (int) Pone en pausa el envío y la recepción de datos. Disponible a partir de cURL 7.18.0.
CURLPAUSE_CONT (int) Reanuda el envío y la recepción de datos. Disponible a partir de cURL 7.18.0.
CURLPAUSE_RECV (int) Pone en pausa la recepción de datos. Disponible a partir de cURL 7.18.0.
CURLPAUSE_RECV_CONT (int) Reanuda la recepción de datos. Disponible a partir de cURL 7.18.0.
CURLPAUSE_SEND (int) Pone en pausa el envío de datos. Disponible a partir de cURL 7.18.0.
CURLPAUSE_SEND_CONT (int) Reanuda el envío de datos. Disponible a 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
17
s dot coletta at unidata dot it
15 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
8
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
9
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
1
Anonymous
2 months ago
If CURLINFO_HEADER_OUT is true and CURLOPT_VERBOSE is true, Verbose will not work! CURLINFO_HEADER_OUT must be false for CURLOPT_VERBOSE to work!
To Top