Предопределённые константы

Модуль определяет перечисленные константы и открывает доступ к константам только тогда, когда модуль либо собрали в PHP, либо динамически загрузили во время исполнения кода.

Описания и примеры работы с этими константами приводит документация функций curl_setopt(), curl_multi_setopt() и curl_getinfo().

CURLFTP_CREATE_DIR (int)
Константа доступна с PHP 7.0.7 и cURL 7.19.3
CURLFTP_CREATE_DIR_NONE (int)
Константа доступна с PHP 7.0.7 и cURL 7.19.3
CURLFTP_CREATE_DIR_RETRY (int)
Константа доступна с PHP 7.0.7 и cURL 7.19.3
CURLFTPSSL_TRY (int)
CURLFTPSSL_ALL (int)
CURLFTPSSL_CONTROL (int)
CURLFTPSSL_NONE (int)
CURLFTPMETHOD_DEFAULT (int)
Константа доступна с PHP 8.2.0 и cURL 7.15.3.
CURLALTSVC_H1 (int)
Константа доступна с PHP 8.2.0 и cURL 7.64.1.
CURLALTSVC_H2 (int)
Константа доступна с PHP 8.2.0 и cURL 7.64.1.
CURLALTSVC_H3 (int)
Константа доступна с PHP 8.2.0 и cURL 7.64.1.
CURLALTSVC_READONLYFILE (int)
Константа доступна с PHP 8.2.0 и cURL 7.64.1.
CURL_SSLVERSION_DEFAULT (int)
CURL_SSLVERSION_TLSv1 (int)
CURL_SSLVERSION_SSLv2 (int)
CURL_SSLVERSION_SSLv3 (int)
CURL_SSLVERSION_TLSv1_0 (int)
CURL_SSLVERSION_TLSv1_1 (int)
CURL_SSLVERSION_TLSv1_2 (int)
CURL_SSLVERSION_TLSv1_3 (int)
Константа доступна с PHP 7.3.0 и cURL 7.52.0
CURLHSTS_ENABLE (int)
Константа доступна с PHP 8.2.0 и cURL 7.74.0
CURLHSTS_READONLYFILE (int)
Константа доступна с PHP 8.2.0 и cURL 7.74.0
CURLAUTH_BASIC (int)
CURLAUTH_DIGEST (int)
CURLAUTH_GSSNEGOTIATE (int)
CURLAUTH_NEGOTIATE (int)
Константа доступна с PHP 7.0.7 и cURL 7.38.0.
CURLAUTH_NTLM (int)
CURLAUTH_NTLM_WB (int)
Константа доступна с PHP 7.0.7 и cURL 7.22.0
CURLAUTH_ANY (int)
CURLAUTH_ANYSAFE (int)
CURLAUTH_AWS_SIGV4 (int)
Константа доступна с PHP 8.2.0 и cURL 7.75.0.
CURLPX_BAD_ADDRESS_TYPE (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_BAD_VERSION (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_CLOSED (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_GSSAPI (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_GSSAPI_PERMSG (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_GSSAPI_PROTECTION (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_IDENTD_DIFFER (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_IDENTD (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_LONG_HOSTNAME (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_LONG_PASSWD (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_LONG_USER (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_NO_AUTH (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_OK (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_RECV_ADDRESS (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_RECV_AUTH (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_RECV_CONNECT (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_RECV_REQACK (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_REPLY_ADDRESS_TYPE_NOT_SUPPORTED (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_REPLY_COMMAND_NOT_SUPPORTED (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_REPLY_CONNECTION_REFUSED (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_REPLY_GENERAL_SERVER_FAILURE (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_REPLY_HOST_UNREACHABLE (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_REPLY_NETWORK_UNREACHABLE (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_REPLY_NOT_ALLOWED (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_REPLY_TTL_EXPIRED (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_REPLY_UNASSIGNED (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_REQUEST_FAILED (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_RESOLVE_HOST (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_SEND_AUTH (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_SEND_CONNECT (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_SEND_REQUEST (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_UNKNOWN_FAIL (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_UNKNOWN_MODE (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURLPX_USER_REJECTED (int)
Константа доступна с PHP 8.2.0 и cURL 7.73.0
CURL_PUSH_OK (int)
Константа доступна с PHP 7.1.0 и cURL 7.44.0
CURL_PUSH_DENY (int)
Константа доступна с PHP 7.1.0 и cURL 7.44.0
CURL_REDIR_POST_301 (int)
Константа доступна с PHP 7.0.7 и cURL 7.18.2
CURL_REDIR_POST_302 (int)
Константа доступна с PHP 7.0.7 и cURL 7.18.2
CURL_REDIR_POST_303 (int)
Константа доступна с PHP 7.0.7 и cURL 7.25.1
CURL_REDIR_POST_ALL (int)
Константа доступна с PHP 7.0.7 и cURL 7.18.2
CURL_TIMECOND_NONE (int)
CURL_TIMECOND_IFMODSINCE (int)
CURL_TIMECOND_IFUNMODSINCE (int)
CURL_TIMECOND_LASTMOD (int)
CURL_VERSION_ALTSVC (int)
Константа доступна с PHP 7.3.6 и cURL 7.64.1
CURL_VERSION_ASYNCHDNS (int)
DNS-имена разрешаются асинхронно. Константа доступна с PHP 7.3.0 и cURL 7.10.7
CURL_VERSION_BROTLI (int)
Константа доступна с PHP 7.3.0 и cURL 7.57.0
CURL_VERSION_CONV (int)
Поддерживается преобразование символов. Константа доступна с PHP 7.3.0 и cURL 7.15.4
CURL_VERSION_CURLDEBUG (int)
Поддерживается отслеживание отладки памяти. Константа доступна с PHP 7.3.6 и cURL 7.19.6
CURL_VERSION_DEBUG (int)
Сборка библиотеки поддерживает отладку. Константа доступна с PHP 7.3.0 и cURL 7.10.6
CURL_VERSION_GSASL (int)
Константа доступна с PHP 8.2.0 и cURL 7.76.0
CURL_VERSION_GSSAPI (int)
Библиотеку собрали с поддержкой библиотеки GSS-API. Константа доступна с PHP 7.3.0 и cURL 7.38.0
CURL_VERSION_GSSNEGOTIATE (int)
Поддерживается согласованная аутентификация. Константа доступна с PHP 7.3.0 и cURL 7.10.6 (устарела с 7.38.0)
CURL_VERSION_HSTS (int)
Константа доступна с PHP 8.2.0 и cURL 7.74.0
CURL_VERSION_IDN (int)
Поддерживаются интернационализированные доменные имена. Константа доступна с PHP 7.3.0 и cURL 7.12.0
CURL_VERSION_MULTI_SSL (int)
Константа доступна с PHP 7.3.0 и cURL 7.56.0
CURL_VERSION_NTLM (int)
Поддерживается NTLM-аутентификация. Константа доступна с PHP 7.3.0 и cURL 7.10.6
CURL_VERSION_NTLM_WB (int)
Поддерживается NTLM-делегирование помощнику Winbind. Константа доступна с PHP 7.3.0 и cURL 7.22.0
CURL_VERSION_IPV6 (int)
Поддержка IPv6-адресов включена.
CURL_VERSION_KERBEROS4 (int)
Поддерживается аутентификация по протоколу Kerberos V4.
CURL_VERSION_KERBEROS5 (int)
Поддерживается аутентификация по протоколу Kerberos V5. Константа доступна с PHP 7.0.7 и cURL 7.40.0
CURL_VERSION_HTTP2 (int)
Поддержка протокола HTTP2 встроена. Константа доступна с cURL 7.33.0
CURL_VERSION_HTTP3 (int)
Константа доступна с PHP 8.2.0 и cURL 7.66.0
CURL_VERSION_LARGEFILE (int)
Библиотека поддерживает файлы размером больше 2 ГБ. Константа доступна с cURL 7.33.0
CURL_VERSION_PSL (int)
Библиотека содержит список общедоступных суффиксов (Public Suffix List), который составили по инициативе компании Mozilla, через который проверяют домены в блоках данных cookie. Константа доступна с PHP 7.3.6 и cURL 7.47.0
CURL_VERSION_SPNEGO (int)
Поддерживается SPNEGO-аутентификация. Константа доступна с PHP 7.3.0 и cURL 7.10.8
CURL_VERSION_SSPI (int)
Библиотеку собрали с поддержкой Windows-технологии защищённой аутентификации SSPI. Константа доступна с PHP 7.3.0 и cURL 7.13.2
CURL_VERSION_SSL (int)
Поддерживаются SSL-опции.
CURL_VERSION_TLSAUTH_SRP (int)
Поддерживается аутентификация по протоколам набора шифров TLS-SRP. Константа доступна с PHP 7.3.0 и cURL 7.21.4
CURL_VERSION_UNICODE (int)
Константа доступна с PHP 8.2.0 и cURL 7.72.0
CURL_VERSION_UNIX_SOCKETS (int)
Поддерживаются сокеты Unix-домена. Константа доступна с PHP 7.0.7 и cURL 7.40.0
CURL_VERSION_ZSTD (int)
Константа доступна с PHP 8.2.0 и cURL 7.72.0
CURL_VERSION_LIBZ (int)
Поддерживаются функции библиотеки libz.
CURLVERSION_NOW (int)
CURLFTPAUTH_DEFAULT (int)
CURLFTPAUTH_SSL (int)
CURLFTPAUTH_TLS (int)
CURLPROXY_HTTP (int)
Константа доступна с cURL 7.10.
CURLPROXY_HTTP_1_0 (int)
Константа доступна с PHP 7.0.7 и cURL 7.19.3
CURLPROXY_SOCKS4 (int)
Константа доступна с cURL 7.10.
CURLPROXY_SOCKS5 (int)
Константа доступна с cURL 7.10.
CURL_NETRC_OPTIONAL (int)
CURL_NETRC_IGNORED (int)
CURL_NETRC_REQUIRED (int)
CURL_HTTP_VERSION_NONE (int)
CURL_HTTP_VERSION_1_0 (int)
CURL_HTTP_VERSION_1_1 (int)
CURL_HTTP_VERSION_2 (int)
Константа доступна с PHP 7.0.7 и cURL 7.43.0
CURL_HTTP_VERSION_2_0 (int)
Константа доступна с cURL 7.33.0
CURL_HTTP_VERSION_2TLS (int)
Константа доступна с PHP 7.0.7 и cURL 7.47.0
CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE (int)
Константа доступна с PHP 7.0.7 и cURL 7.49.0
CURLMSG_DONE (int)
CURLSSLOPT_ALLOW_BEAST (int)
Константа доступна с cURL 7.25.0
CURLSSLOPT_NO_REVOKE (int)
Константа доступна с PHP 7.0.7 и cURL 7.44.0
CURLSSLOPT_AUTO_CLIENT_CERT (int)
Константа доступна с PHP 8.2.0 и cURL 7.77.0
CURLSSLOPT_NATIVE_CA (int)
Константа доступна с PHP 8.2.0 и cURL 7.71.0
CURLSSLOPT_NO_PARTIALCHAIN (int)
Константа доступна с PHP 8.2.0 и cURL 7.68.0
CURLSSLOPT_REVOKE_BEST_EFFORT (int)
Константа доступна с PHP 8.2.0 и cURL 7.70.0
CURLSSH_AUTH_AGENT (int)
Константа доступна с PHP 7.0.7 и cURL 7.28.0
CURLSSH_AUTH_ANY (int)
CURLSSH_AUTH_DEFAULT (int)
CURLSSH_AUTH_HOST (int)
CURLSSH_AUTH_KEYBOARD (int)
CURLSSH_AUTH_NONE (int)
CURLSSH_AUTH_PASSWORD (int)
CURLSSH_AUTH_PUBLICKEY (int)
CURLPIPE_NOTHING (int)
Константа доступна с cURL 7.43.0.
CURLPIPE_HTTP1 (int)
Константа доступна с cURL 7.43.0.
CURLPIPE_MULTIPLEX (int)
Константа доступна с cURL 7.43.0.
CURLPROXY_SOCKS4A (int)
Константа доступна с cURL 7.18.0.
CURLPROXY_SOCKS5_HOSTNAME (int)
Константа доступна с cURL 7.18.0.
CURLHEADER_SEPARATE (int)
Константа доступна с PHP 7.0.7 и cURL 7.37.0.
CURLHEADER_UNIFIED (int)
Константа доступна с PHP 7.0.7 и cURL 7.37.0.
CURLAUTH_GSSAPI (int)
Константа доступна с PHP 7.3.0 и cURL 7.54.1
CURL_MAX_READ_SIZE (int)
Константа доступна с PHP 7.3.0 и cURL 7.53.0
CURLPROXY_HTTPS (int)
Константа доступна с PHP 7.3.0 и cURL 7.52.0
CURL_SSLVERSION_MAX_DEFAULT (int)
Константа доступна с PHP 7.3.0 и cURL 7.54.0
CURL_SSLVERSION_MAX_NONE (int)
Константа доступна с PHP 7.3.0 и cURL 7.54.0
CURL_SSLVERSION_MAX_TLSv1_0 (int)
Константа доступна с PHP 7.3.0 и cURL 7.54.0
CURL_SSLVERSION_MAX_TLSv1_1 (int)
Константа доступна с PHP 7.3.0 и cURL 7.54.0
CURL_SSLVERSION_MAX_TLSv1_2 (int)
Константа доступна с PHP 7.3.0 и cURL 7.54.0
CURL_SSLVERSION_MAX_TLSv1_3 (int)
Константа доступна с PHP 7.3.0 и cURL 7.54.0
CURL_VERSION_HTTPS_PROXY (int)
Константа доступна с PHP 7.3.0 и cURL 7.52.0
CURLAUTH_BEARER (int)
Константа доступна с PHP 7.3.0 и cURL 7.61.0.
CURLSSH_AUTH_GSSAPI (int)
Константа доступна с PHP 7.3.0 и cURL 7.58.0
CURLMIMEOPT_FORMESCAPE (int)
Константа доступна с PHP 8.3.0 и cURL 7.81.0
CURLWS_RAW_MODE (int)
Константа доступна с PHP 8.3.0 и cURL 7.86.0
CURLKHMATCH_OK (int)
Константа доступна с PHP 8.3.0 и cURL 7.19.6
CURLKHMATCH_MISMATCH (int)
Константа доступна с PHP 8.3.0 и cURL 7.19.6
CURLKHMATCH_MISSING (int)
Константа доступна с PHP 8.3.0 и cURL 7.19.6
CURLKHMATCH_LAST (int)
Константа доступна с PHP 8.3.0 и cURL 7.19.6
curl-setopt()
Константы Описание
CURLOPT_ABSTRACT_UNIX_SOCKET (int)

Разрешает соединяться с абстрактным сокетом Unix-домена вместо установления TCP-соединения с хостом и устанавливает путь к заданной строке string. Опция следует той же семантике, что и опция CURLOPT_UNIX_SOCKET_PATH. Обе опции разделяют одно хранилище, поэтому для каждого дескриптора разрешается установить только одну. Константа доступна с PHP 7.3.0 и cURL 7.53.0

CURLOPT_ALTSVC (int)

Передаёт название файла модулю cURL, который модуль будет использовать как Alt-Svc-файл кеша для чтения существующего содержимого кеша и, возможно, также записи данных обратно в файл после передачи, если только для опции CURLOPT_ALTSVC_CTRL не установили значение CURLALTSVC_READONLYFILE. Константа доступна с 8.2.0 и cURL 7.64.1.

CURLOPT_ALTSVC_CTRL (int)

Заполняет битовую маску правильным набором функций, чтобы проинструктировать модуль cURL, как обрабатывать файл Alt-Svc при обмене данными через дескриптор. cURL принимает заголовки файла Alt-Svc только по HTTPS-протоколу. Модуль выполнит запрос к альтернативному источнику, только если источник правильно работает по HTTPS-протоколу. Установка хотя бы одного бита включит механизм alt-svc. Поведение кеша определяет следующий набор опций: CURLALTSVC_H1, CURLALTSVC_H2, CURLALTSVC_H3 и CURLALTSVC_READONLYFILE. Константа доступна с 8.2.0 и cURL 7.64.1.

CURLOPT_AUTOREFERER (int)

Значение true автоматически установит значение для поля Referer: в запросах, которые следуют по URL-адресу перенаправления в заголовке Location:.

CURLOPT_AWS_SIGV4 (int)

Аутентифицирует запрос к веб-службам компании Amazon по AWS-подписи версии 4 в HTTP- или HTTPS-заголовках. Опция переопределяет другие типы аутентификации, которые установили в опции CURLOPT_HTTPAUTH. Этот метод нельзя комбинировать с другими типами аутентификации. Константа доступна с 8.2.0 и cURL 7.75.0

CURLOPT_BINARYTRANSFER (int)

CURLOPT_BUFFERSIZE (int)

Размер буфера, который модуль будет использовать при каждом чтении данных. При этом модуль не гарантирует, что обработает запрос. Константа доступна с cURL 7.10.

CURLOPT_CAINFO (int)

Имя файла, в котором содержится один или набор сертификатов для проверки узла. Опцию устанавливают только в сочетании с опцией CURLOPT_SSL_VERIFYPEER. Иногда требуется указывать абсолютный путь к файлу.

CURLOPT_CAINFO_BLOB (int)

Имя PEM-файла, в котором содержится один или набор сертификатов для проверки узла. Опция переопределяет опцию CURLOPT_CAINFO. Константа доступна с 8.2.0 и cURL 7.77.0

CURLOPT_CAPATH (int)

Каталог, который содержит набор сертификатов удостоверяющего центра. Опцию указывают вместе с опцией CURLOPT_SSL_VERIFYPEER.

CURLOPT_CA_CACHE_TIMEOUT (int)

Константа доступна с 8.3.0 и cURL 7.87.0

CURLOPT_CERTINFO (int)

Значение true выводит информацию о SSL-сертификации в поток STDERR при безопасной передаче. Константу добавили в cURL 7.19.1. Константа будет работать, только если включить опцию CURLOPT_VERBOSE.

CURLOPT_CONNECTTIMEOUT (int)

Количество секунд, которое модуль потратит на попытку установить подключение. Значение 0 включит бесконечное ожидание.

CURLOPT_CONNECTTIMEOUT_MS (int)

Количество миллисекунд, которое модуль потратит на попытку установить подключение. Значение 0 включит бесконечное ожидание. Эта часть соединения по-прежнему будет использовать разрешение в целую секунду для пределов времени, у которых минимальное допустимое время ожидания равно одной секунде, если библиотеку libcurl собрали со стандартным резольвером имён системы. Константа доступна с cURL 7.16.2.

CURLOPT_CONNECT_ONLY (int)

Значение true сообщает библиотеке, что требуется аутентифицировать прокси-сервер и настройку соединения, но не передавать данные. Опцию реализовали для работы с протоколами HTTP, SMTP и POP3. Константа доступна с cURL 7.15.2.

CURLOPT_CONNECT_TO (int)

Подключается к заданному хосту и порту, а не хосту и порту URL-адреса. Опция принимает массив строк в формате HOST:PORT:CONNECT-TO-HOST:CONNECT-TO-PORT. Константа доступна с 7.0.7 и cURL 7.49.0

Содержимое заголовка "Cookie: ", которое модуль будет использовать в HTTP-запросе. Обратите внимание, что блоки данных cookie разделяются точкой с запятой, за которой следует пробел: "fruit=apple; colour=red"

CURLOPT_COOKIEFILE (int)

Имя файла, который содержит блоки данных cookies. Блоки cookie записывают в файл в формате Netscape или прямо простыми заголовками в HTTP-стиле, которые сбросили в файл. Модуль не будет загружать блоки данных cookies, но обработка cookies останется включённой, если имя файла окажется пустой строкой

CURLOPT_COOKIEJAR (int)

Название файла, в котором будут сохраняться внутренние cookie при вызове деструктора дескриптора.

Внимание

Начиная с PHP 8.0.0 функция curl_close() ничего не делает с дескриптором и не уничтожает его. На дескрипторе вызывают конструкцию языка unset(), если требуется записать cookies до автоматического уничтожения дескриптора.

CURLOPT_COOKIELIST (int)

Строка блока данных cookie (то есть одна строка в формате Netscape/Mozilla или стандартный заголовок Set-Cookie в HTTP-стиле) добавляет единственный блок cookie во внутреннее хранилище блоков данных cookie. Значение "ALL" стирает все cookie, которые хранятся в памяти. Значение "SESS" удаляет из памяти все блоки данных cookie сессии. Значение "FLUSH" записывает все известные блоки данных cookie в файл, который указали в опции CURLOPT_COOKIEJAR. Значение "RELOAD" загружает все блоки данных cookie из файлов, которые указали в опции CURLOPT_COOKIEFILE. Константа доступна с cURL 7.14.1

CURLOPT_COOKIESESSION (int)

Значение true помечает этот блок данных как новую «сессию» блоков cookie. Это заставит библиотеку libcurl игнорировать каждый блок данных cookie, который она собирается загрузить и который относится к «сеансовым cookie» предыдущей сессии. По умолчанию библиотека libcurl каждый раз сохраняет и загружает каждый блок данных cookie, независимо от того, принадлежат ли они к сессионным cookies или нет. Сеансовые cookie — cookie без даты истечения срока действия, и они должны быть живыми и существующим только для этой «сессии».

CURLOPT_CRLF (int)

Значение true преобразовывает символ новой строки, который указывают в системах Unix, в последовательность символов CRLF при передаче.

CURLOPT_CUSTOMREQUEST (int)

Пользовательский метод запроса, который модуль будет использовать вместо "GET" или "HEAD" при отправке HTTP-запроса. Это полезно при запросах "DELETE" или других, более редких HTTP-запросах. Допустимые значения: "GET", "POST", "CONNECT" и так далее; т. е. здесь не нужно вводить всю строку с HTTP-запросом. Например, значение "GET /index.html HTTP/1.0\r\n\r\n" будет неправильным.

Замечание:

Опцию указывают, только после проверки и подтверждения, что сервер поддерживает пользовательский метод запроса.

CURLOPT_DEFAULT_PROTOCOL (int)

Протокол по умолчанию, который модуль будет использовать, если название схемы отсутствует в URL-адресе. Константа доступна с 7.0.7 и cURL 7.45.0

CURLOPT_DISALLOW_USERNAME_IN_URL (int)

Со значением true опция запрещает URL-адреса с именем пользователя. По умолчанию имена пользователей разрешаются — значение по умолчанию равно 0. Константа доступна с 7.3.0 и cURL 7.61.0

CURLOPT_DNS_CACHE_TIMEOUT (int)

Количество секунд, в течение которых в памяти хранятся DNS-записи. По умолчанию значение опции равно 120 секундам, что эквивалентно 2 минутам.

CURLOPT_DNS_INTERFACE (int)

Устанавливает имя сетевого интерфейса, к которому требуется привязать резольвер DNS-имён. Опция принимает только имена интерфейса, а не адреса. Константа доступна с 7.0.7 и cURL 7.33.0

CURLOPT_DNS_LOCAL_IP4 (int)

Устанавливает локальный IPv4-адрес, к которому требуется привязать резольвер. Опция принимает только аргументы, которые содержат один числовой IPv4-адрес в виде строки. Константа доступна с 7.0.7 и cURL 7.33.0

CURLOPT_DNS_LOCAL_IP6 (int)

Устанавливает локальный IPv6-адрес, к которому требуется привязать резольвер. Опция принимает только аргументы, которые содержат один числовой IPv6-адрес в виде строки. Константа доступна с 7.0.7 и cURL 7.33.0

CURLOPT_DNS_SHUFFLE_ADDRESSES (int)

Со значением true опция перемешивает адреса, которые вернул DNS-сервер, так, чтобы адреса выбирались в случайном порядке, когда имя разрешилось и DNS сервер вернул больше одного IP-адреса. Иногда из-за этого модуль выберет IPv4-адрес раньше IPv6-адреса и наоборот. Константа доступна с 7.3.0 и cURL 7.60.0

CURLOPT_DNS_USE_GLOBAL_CACHE (int)

Опции указывают значение true, чтобы модуль разрешал имена через глобальный DNS-кеш. Опция непотокобезопасна. По умолчанию опция условно включена, если PHP собрали не для безопасной работы в потоках (в командной оболочке CLI, через интерфейс FCGI, модуль Apache2-Prefork, который работает на основе процессов, а не потоков, и т. д.).

CURLOPT_DOH_SSL_VERIFYHOST (int)

Проверяет поля имени SSL-сертификата DoH-сервера на соответствие имени хоста. Константа доступна с 8.2.0 и cURL 7.76.0.

CURLOPT_DOH_SSL_VERIFYPEER (int)

Проверяет подлинность SSL-сертификата DoH-сервера. Константа доступна с 8.2.0 и cURL 7.76.0.

CURLOPT_DOH_SSL_VERIFYSTATUS (int)

Просит модуль cURL проверить статус сертификата DoH-сервера через TLS-расширение «Запрос статуса сертификата» (OCSP-сшивание). Константа доступна с 8.2.0 и cURL 7.76.0.

CURLOPT_DOH_URL (int)

Задаёт URL-адрес, по которому DoH-сервер будет разрешать имена. Константа доступна с 8.1.0 и cURL 7.62.0.

CURLOPT_EGDSOCKET (int)

Аналогична опции CURLOPT_RANDOM_FILE, за исключением имени файла сокета демона сбора энтропии (Entropy Gathering Daemon).

CURLOPT_ENCODING (int)

Содержимое заголовка "Accept-Encoding: ". Опция помогает декодировать ответ. Опция поддерживает следующие кодировки: "identity", "deflate" и "gzip". При установке пустой строки — "" — отправляется заголовок, который содержит все типы кодировок, которые поддерживает опция. Константа доступна с cURL 7.10.

CURLOPT_EXPECT_100_TIMEOUT_MS (int)

Время ожидания ответов с заголовком Expect: 100-continue в миллисекундах. Значение по умолчанию равно 1000 миллисекунд. Константа доступна с 7.0.7 и cURL 7.36.0

CURLOPT_FAILONERROR (int)

Со значением true опция возвращает подробную информацию о сбое, если вернулся HTTP-код ответа, который больше или равен 400. Поведение по умолчанию возвращает страницу, а код игнорирует.

CURLOPT_FILE (int)

Файл, в который модуль запишет результат передачи. По умолчанию модуль отправляет вывод в поток STDOUT — окно браузера.

CURLOPT_FILETIME (int)

true to attempt to retrieve the modification date of the remote document. This value can be retrieved using the CURLINFO_FILETIME option with curl_getinfo().

CURLOPT_FOLLOWLOCATION (int)

true to follow any "Location: " header that the server sends as part of the HTTP header. See also CURLOPT_MAXREDIRS. This constant is not available when open_basedir is enabled.

CURLOPT_FORBID_REUSE (int)

true to force the connection to explicitly close when it has finished processing, and not be pooled for reuse.

CURLOPT_FRESH_CONNECT (int)

true to force the use of a new connection instead of a cached one.

CURLOPT_FTPAPPEND (int)

true to append to the remote file instead of overwriting it.

CURLOPT_FTPASCII (int)

An alias of CURLOPT_TRANSFERTEXT. Use that instead.

CURLOPT_FTPLISTONLY (int)

true to only list the names of an FTP directory.

CURLOPT_FTPPORT (int)

The value which will be used to get the IP address to use for the FTP "PORT" instruction. The "PORT" instruction tells the remote server to connect to our specified IP address. The string may be a plain IP address, a hostname, a network interface name (under Unix), or just a plain '-' to use the systems default IP address.

CURLOPT_FTPSSLAUTH (int)

The FTP authentication method (when is activated): CURLFTPAUTH_SSL (try SSL first), CURLFTPAUTH_TLS (try TLS first), or CURLFTPAUTH_DEFAULT (let cURL decide). Константа доступна с cURL 7.12.2.

CURLOPT_FTP_CREATE_MISSING_DIRS (int)

true to create missing directories when an FTP operation encounters a path that currently doesn't exist.

CURLOPT_FTP_FILEMETHOD (int)

Tell curl which method to use to reach a file on a FTP(S) server. Possible values are CURLFTPMETHOD_DEFAULT, CURLFTPMETHOD_MULTICWD, CURLFTPMETHOD_NOCWD, and CURLFTPMETHOD_SINGLECWD. Константа доступна с cURL 7.15.1.

CURLOPT_FTP_SSL (int)

CURLOPT_FTP_USE_EPRT (int)

true to use EPRT (and LPRT) when doing active FTP downloads. Use false to disable EPRT and LPRT and use PORT only.

CURLOPT_FTP_USE_EPSV (int)

true to first try an EPSV command for FTP transfers before reverting back to PASV. Set to false to disable EPSV.

CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS (int)

Head start for ipv6 for the happy eyeballs algorithm. Happy eyeballs attempts to connect to both IPv4 and IPv6 addresses for dual-stack hosts, preferring IPv6 first for timeout milliseconds. Defaults to CURL_HET_DEFAULT, which is currently 200 milliseconds. Константа доступна с 7.3.0 и cURL 7.59.0

CURLOPT_HAPROXYPROTOCOL (int)

true to send an HAProxy PROXY protocol v1 header at the start of the connection. The default action is not to send this header. Константа доступна с 7.3.0 и cURL 7.60.0

CURLOPT_HEADER (int)

true to include the header in the output.

CURLOPT_HEADERFUNCTION (int)

A callback accepting two parameters. The first is the cURL resource, the second is a string with the header data to be written. The header data must be written by this callback. Return the number of bytes written.

CURLOPT_HEADEROPT (int)

Possible values are CURLHEADER_UNIFIED or CURLHEADER_SEPARATE. Defaults to CURLHEADER_SEPARATE as of cURL 7.42.1, and CURLHEADER_UNIFIED before. Константа доступна с 7.0.7 и cURL 7.37.0

CURLOPT_HSTS (int)

HSTS (HTTP Strict Transport Security) cache file name. Константа доступна с 8.2.0 и cURL 7.74.0

CURLOPT_HSTS_CTRL (int)

Controls HSTS (HTTP Strict Transport Security) behavior. Populate the bitmask with the correct set of features to instruct cURL how to handle HSTS for the transfers using this handle. CURLHSTS_ENABLE enables the in-memory HSTS cache. If the HSTS cache file is defined, set CURLHSTS_READONLYFILE to make the file read-only. Константа доступна с 8.2.0 и cURL 7.74.0

CURLOPT_HTTP09_ALLOWED (int)

Whether to allow HTTP/0.9 responses. Defaults to false as of libcurl 7.66.0; formerly it defaulted to true. Константа доступна с 7.3.15 and 7.4.3, respectively, и cURL 7.64.0

CURLOPT_HTTP200ALIASES (int)

An array of HTTP 200 responses that will be treated as valid responses and not as errors. Константа доступна с cURL 7.10.3.

CURLOPT_HTTPAUTH (int)

The HTTP authentication method(s) to use. The options are: CURLAUTH_BASIC, CURLAUTH_DIGEST, CURLAUTH_GSSNEGOTIATE, CURLAUTH_NTLM, CURLAUTH_AWS_SIGV4, CURLAUTH_ANY, and CURLAUTH_ANYSAFE. The bitwise | (or) operator can be used to combine more than one method. If this is done, cURL will poll the server to see what methods it supports and pick the best one. CURLAUTH_ANY sets all bits. cURL will automatically select the one it finds most secure. CURLAUTH_ANYSAFE sets all bits except CURLAUTH_BASIC. cURL will automatically select the one it finds most secure.

CURLOPT_HTTPGET (int)

true to reset the HTTP request method to GET. Since GET is the default, this is only necessary if the request method has been changed.

CURLOPT_HTTPHEADER (int)

An array of HTTP header fields to set, in the format array('Content-type: text/plain', 'Content-length: 100')

CURLOPT_HTTPPROXYTUNNEL (int)

true to tunnel through a given HTTP proxy.

CURLOPT_HTTP_CONTENT_DECODING (int)

false to get the raw HTTP response body. Константа доступна с cURL 7.16.2.

CURLOPT_HTTP_VERSION (int)

CURL_HTTP_VERSION_NONE (default, lets CURL decide which version to use), CURL_HTTP_VERSION_1_0 (forces HTTP/1.0), CURL_HTTP_VERSION_1_1 (forces HTTP/1.1), CURL_HTTP_VERSION_2_0 (attempts HTTP 2), CURL_HTTP_VERSION_2 (alias of CURL_HTTP_VERSION_2_0), CURL_HTTP_VERSION_2TLS (attempts HTTP 2 over TLS (HTTPS) only) or CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE (issues non-TLS HTTP requests using HTTP/2 without HTTP/1.1 Upgrade).

CURLOPT_INFILE (int)

The file that the transfer should be read from when uploading.

CURLOPT_INFILESIZE (int)

The expected size, in bytes, of the file when uploading a file to a remote site. Note that using this option will not stop libcurl from sending more data, as exactly what is sent depends on CURLOPT_READFUNCTION.

CURLOPT_INTERFACE (int)

The name of the outgoing network interface to use. This can be an interface name, an IP address or a host name.

CURLOPT_IPRESOLVE (int)

Allows an application to select what kind of IP addresses to use when resolving host names. This is only interesting when using host names that resolve addresses using more than one version of IP, possible values are CURL_IPRESOLVE_WHATEVER, CURL_IPRESOLVE_V4, CURL_IPRESOLVE_V6, by default CURL_IPRESOLVE_WHATEVER. Константа доступна с cURL 7.10.8.

CURLOPT_ISSUERCERT_BLOB (int)

Issuer SSL certificate from memory blob. Константа доступна с 8.1.0 и cURL 7.71.0.

CURLOPT_KEEP_SENDING_ON_ERROR (int)

true to keep sending the request body if the HTTP code returned is equal to or larger than 300. The default action would be to stop sending and close the stream or connection. Suitable for manual NTLM authentication. Most applications do not need this option. Константа доступна с 7.3.0 и cURL 7.51.0

CURLOPT_KEYPASSWD (int)

The password required to use the CURLOPT_SSLKEY or CURLOPT_SSH_PRIVATE_KEYFILE private key. Константа доступна с cURL 7.16.1.

CURLOPT_KRB4LEVEL (int)

The KRB4 (Kerberos 4) security level. Any of the following values (in order from least to most powerful) are valid: "clear", "safe", "confidential", "private".. If the string does not match one of these, "private" is used. Setting this option to null will disable KRB4 security. Currently KRB4 security only works with FTP transactions.

CURLOPT_LOGIN_OPTIONS (int)

Can be used to set protocol specific login options, such as the preferred authentication mechanism via "AUTH=NTLM" or "AUTH=*", and should be used in conjunction with the CURLOPT_USERNAME option. Константа доступна с 7.0.7 и cURL 7.34.0

CURLOPT_LOW_SPEED_LIMIT (int)

The transfer speed, in bytes per second, that the transfer should be below during the count of CURLOPT_LOW_SPEED_TIME seconds before PHP considers the transfer too slow and aborts.

CURLOPT_LOW_SPEED_TIME (int)

The number of seconds the transfer speed should be below CURLOPT_LOW_SPEED_LIMIT before PHP considers the transfer too slow and aborts.

CURLOPT_MAIL_RCPT_ALLLOWFAILS (int)

Константа доступна с 8.2.0 и cURL 7.69.0

CURLOPT_MAXAGE_CONN (int)

The maximum idle time allowed for an existing connection to be considered for reuse. Default maximum age is set to 118 seconds. Константа доступна с 8.2.0 и cURL 7.65.0

CURLOPT_MAXCONNECTS (int)

The maximum amount of persistent connections that are allowed. When the limit is reached, the oldest one in the cache is closed to prevent increasing the number of open connections.

CURLOPT_MAXFILESIZE_LARGE (int)

The maximum file size in bytes allowed to download. If the file requested is found larger than this value, the transfer will not start and CURLE_FILESIZE_EXCEEDED will be returned. The file size is not always known prior to download, and for such files this option has no effect even if the file transfer ends up being larger than this given limit. Константа доступна с 8.2.0 и cURL 7.11.0

CURLOPT_MAXLIFETIME_CONN (int)

The maximum time in seconds, since the creation of the connection, that is allowed for an existing connection to have for it to be considered for reuse. If a connection is found in the cache that is older than this value, it will instead be closed once any in-progress transfers are complete. Default is 0 seconds, meaning the option is disabled and all connections are eligible for reuse. Константа доступна с 8.2.0 и cURL 7.80.0

CURLOPT_MAXREDIRS (int)

The maximum amount of HTTP redirections to follow. Use this option alongside CURLOPT_FOLLOWLOCATION. Default value of 20 is set to prevent infinite redirects. Setting to -1 allows inifinite redirects, and 0 refuses all redirects.

CURLOPT_MAX_RECV_SPEED_LARGE (int)

If a download exceeds this speed (counted in bytes per second) on cumulative average during the transfer, the transfer will pause to keep the average rate less than or equal to the parameter value. Defaults to unlimited speed. Константа доступна с cURL 7.15.5

CURLOPT_MAX_SEND_SPEED_LARGE (int)

If an upload exceeds this speed (counted in bytes per second) on cumulative average during the transfer, the transfer will pause to keep the average rate less than or equal to the parameter value. Defaults to unlimited speed. Константа доступна с cURL 7.15.5

CURLOPT_MIME_OPTIONS (int)

Константа доступна с 8.3.0 и cURL 7.81.0

CURLOPT_MUTE (int)

true to be completely silent with regards to the cURL functions. Removed as of cURL 7.15.5; use CURLOPT_RETURNTRANSFER instead.

CURLOPT_NETRC (int)

true to scan the ~/.netrc file to find a username and password for the remote site that a connection is being established with.

CURLOPT_NOBODY (int)

true to exclude the body from the output. Request method is then set to HEAD. Changing this to false does not change it to GET.

CURLOPT_NOPROGRESS (int)

true to disable the progress meter for cURL transfers.

Замечание:

PHP automatically sets this option to true, this should only be changed for debugging purposes.

CURLOPT_NOSIGNAL (int)

true to ignore any cURL function that causes a signal to be sent to the PHP process. This is turned on by default in multi-threaded SAPIs so timeout options can still be used. Константа доступна с cURL 7.10.

CURLOPT_PASSWDFUNCTION (int)

A callback accepting three parameters. The first is the cURL resource, the second is a string containing a password prompt, and the third is the maximum password length. Return the string containing the password. Removed as of PHP 7.3.0.

CURLOPT_PASSWORD (int)

The password to use in authentication. Константа доступна с cURL 7.19.1.

CURLOPT_PATH_AS_IS (int)

true to not handle dot dot sequences. Константа доступна с 7.0.7 и cURL 7.42.0

CURLOPT_PINNEDPUBLICKEY (int)

Set the pinned public key. The string can be the file name of your pinned public key. The file format expected is "PEM" or "DER". The string can also be any number of base64 encoded sha256 hashes preceded by "sha256//" and separated by ";". Константа доступна с 7.0.7 и cURL 7.39.0

CURLOPT_PIPEWAIT (int)

true to wait for pipelining/multiplexing. Константа доступна с 7.0.7 и cURL 7.43.0

CURLOPT_PORT (int)

An alternative port number to connect to.

CURLOPT_POST (int)

true to do a regular HTTP POST. This POST is the normal application/x-www-form-urlencoded kind, most commonly used by HTML forms.

CURLOPT_POSTFIELDS (int)

The full data to post in a HTTP "POST" operation. This parameter can either be passed as a urlencoded string like 'para1=val1&para2=val2&...' or as an array with the field name as key and field data as value. If value is an array, the Content-Type header will be set to multipart/form-data. Files can be sent using CURLFile or CURLStringFile, in which case value must be an array.

CURLOPT_POSTQUOTE (int)

An array of FTP commands to execute on the server after the FTP request has been performed.

CURLOPT_POSTREDIR (int)

A bitmask of 1 (301 Moved Permanently), 2 (302 Found) and 4 (303 See Other) if the HTTP POST method should be maintained when CURLOPT_FOLLOWLOCATION is set and a specific type of redirect occurs. Константа доступна с cURL 7.19.1.

CURLOPT_PRE_PROXY (int)

Set a string holding the host name or dotted numerical IP address to be used as the preproxy that curl connects to before it connects to the HTTP(S) proxy specified in the CURLOPT_PROXY option for the upcoming request. The preproxy can only be a SOCKS proxy and it should be prefixed with [scheme]:// to specify which kind of socks is used. A numerical IPv6 address must be written within [brackets]. Setting the preproxy to an empty string explicitly disables the use of a preproxy. To specify port number in this string, append :[port] to the end of the host name. The proxy's port number may optionally be specified with the separate option CURLOPT_PROXYPORT. Defaults to using port 1080 for proxies if a port is not specified. Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PRIVATE (int)

Any data that should be associated with this cURL handle. This data can subsequently be retrieved with the CURLINFO_PRIVATE option of curl_getinfo(). cURL does nothing with this data. When using a cURL multi handle, this private data is typically a unique key to identify a standard cURL handle. Константа доступна с cURL 7.10.3.

CURLOPT_PROGRESSFUNCTION (int)

A callback accepting five parameters. The first is the cURL resource, the second is the total number of bytes expected to be downloaded in this transfer, the third is the number of bytes downloaded so far, the fourth is the total number of bytes expected to be uploaded in this transfer, and the fifth is the number of bytes uploaded so far.

Замечание:

The callback is only called when the CURLOPT_NOPROGRESS option is set to false.

Return a non-zero value to abort the transfer. In which case, the transfer will set a CURLE_ABORTED_BY_CALLBACK error.

CURLOPT_PROTOCOLS (int)

Bitmask of CURLPROTO_* values. If used, this bitmask limits what protocols libcurl may use in the transfer. This allows you to have a libcurl built to support a wide range of protocols but still limit specific transfers to only be allowed to use a subset of them. By default libcurl will accept all protocols it supports. See also CURLOPT_REDIR_PROTOCOLS. Valid protocol options are: CURLPROTO_HTTP, CURLPROTO_HTTPS, CURLPROTO_FTP, CURLPROTO_FTPS, CURLPROTO_SCP, CURLPROTO_SFTP, CURLPROTO_TELNET, CURLPROTO_LDAP, CURLPROTO_LDAPS, CURLPROTO_DICT, CURLPROTO_FILE, CURLPROTO_TFTP, CURLPROTO_MQTT, CURLPROTO_ALL Константа доступна с cURL 7.19.4.

CURLOPT_PROTOCOLS_STR (int)

Константа доступна с 8.3.0 и cURL 7.85.0

CURLOPT_PROXY (int)

The HTTP proxy to tunnel requests through.

CURLOPT_PROXYAUTH (int)

The HTTP authentication method(s) to use for the proxy connection. Use the same bitmasks as described in CURLOPT_HTTPAUTH. For proxy authentication, only CURLAUTH_BASIC and CURLAUTH_NTLM are currently supported. Константа доступна с cURL 7.10.7.

CURLOPT_PROXYHEADER (int)

An array of custom HTTP headers to pass to proxies. Константа доступна с 7.0.7 и cURL 7.37.0

CURLOPT_PROXYPORT (int)

The port number of the proxy to connect to. This port number can also be set in CURLOPT_PROXY.

CURLOPT_PROXYTYPE (int)

Either CURLPROXY_HTTP (default), CURLPROXY_SOCKS4, CURLPROXY_SOCKS5, CURLPROXY_SOCKS4A or CURLPROXY_SOCKS5_HOSTNAME. Константа доступна с cURL 7.10.

CURLOPT_PROXYUSERPWD (int)

A username and password formatted as "[username]:[password]" to use for the connection to the proxy.

CURLOPT_PROXY_CAINFO (int)

The path to proxy Certificate Authority (CA) bundle. Set the path as a string naming a file holding one or more certificates to verify the HTTPS proxy with. This option is for connecting to an HTTPS proxy, not an HTTPS server. Defaults set to the system path where libcurl's cacert bundle is assumed to be stored. Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PROXY_CAINFO_BLOB (int)

The name of a PEM file holding one or more certificates to verify the HTTPS proxy with. This option is for connecting to an HTTPS proxy, not an HTTPS server. Defaults set to the system path where libcurl's cacert bundle is assumed to be stored. Константа доступна с 8.2.0 и cURL 7.77.0

CURLOPT_PROXY_CAPATH (int)

The directory holding multiple CA certificates to verify the HTTPS proxy with. Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PROXY_CRLFILE (int)

Set the file name with the concatenation of CRL (Certificate Revocation List) in PEM format to use in the certificate validation that occurs during the SSL exchange. Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PROXY_ISSUERCERT (int)

Proxy issuer SSL certificate filename. Константа доступна с 8.1.0 и cURL 7.71.0.

CURLOPT_PROXY_ISSUERCERT_BLOB (int)

Proxy issuer SSL certificate from memory blob. Константа доступна с 8.1.0 и cURL 7.71.0.

CURLOPT_PROXY_KEYPASSWD (int)

Set the string be used as the password required to use the CURLOPT_PROXY_SSLKEY private key. You never needed a passphrase to load a certificate but you need one to load your private key. This option is for connecting to an HTTPS proxy, not an HTTPS server. Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PROXY_PINNEDPUBLICKEY (int)

Set the pinned public key for HTTPS proxy. The string can be the file name of your pinned public key. The file format expected is "PEM" or "DER". The string can also be any number of base64 encoded sha256 hashes preceded by "sha256//" and separated by ";". Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PROXY_SERVICE_NAME (int)

The proxy authentication service name. Константа доступна с 7.0.7, cURL 7.43.0 (for HTTP proxies) и cURL 7.49.0 (for SOCKS5 proxies).

CURLOPT_PROXY_SSLCERT (int)

The file name of your client certificate used to connect to the HTTPS proxy. The default format is "P12" on Secure Transport and "PEM" on other engines, and can be changed with CURLOPT_PROXY_SSLCERTTYPE. With NSS or Secure Transport, this can also be the nickname of the certificate you wish to authenticate with as it is named in the security database. If you want to use a file from the current directory, please precede it with "./" prefix, in order to avoid confusion with a nickname. Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PROXY_SSLCERTTYPE (int)

The format of your client certificate used when connecting to an HTTPS proxy. Supported formats are "PEM" and "DER", except with Secure Transport. OpenSSL (versions 0.9.3 and later) and Secure Transport (on iOS 5 or later, or OS X 10.7 or later) also support "P12" for PKCS#12-encoded files. Defaults to "PEM". Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PROXY_SSLCERT_BLOB (int)

SSL proxy client certificate from memory blob. Константа доступна с 8.1.0 и cURL 7.71.0.

CURLOPT_PROXY_SSLKEY (int)

The file name of your private key used for connecting to the HTTPS proxy. The default format is "PEM" and can be changed with CURLOPT_PROXY_SSLKEYTYPE. (iOS and Mac OS X only) This option is ignored if curl was built against Secure Transport. Available if built TLS enabled. Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PROXY_SSLKEYTYPE (int)

The format of your private key. Supported formats are "PEM", "DER" and "ENG". Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PROXY_SSLKEY_BLOB (int)

Private key for proxy cert from memory blob. Константа доступна с 8.1.0 и cURL 7.71.0.

CURLOPT_PROXY_SSLVERSION (int)

One of CURL_SSLVERSION_DEFAULT, CURL_SSLVERSION_TLSv1, CURL_SSLVERSION_TLSv1_0, CURL_SSLVERSION_TLSv1_1, CURL_SSLVERSION_TLSv1_2, CURL_SSLVERSION_TLSv1_3, CURL_SSLVERSION_MAX_DEFAULT, CURL_SSLVERSION_MAX_TLSv1_0, CURL_SSLVERSION_MAX_TLSv1_1, CURL_SSLVERSION_MAX_TLSv1_2, CURL_SSLVERSION_MAX_TLSv1_3, CURL_SSLVERSION_SSLv3 .

Внимание

It is better to not set this option and leave the default CURL_SSLVERSION_DEFAULT which will attempt to figure out the remote SSL protocol version.

Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PROXY_SSL_CIPHER_LIST (int)

The list of ciphers to use for the connection to the HTTPS proxy. The list must be syntactically correct, it consists of one or more cipher strings separated by colons. Commas or spaces are also acceptable separators but colons are normally used, !, - and + can be used as operators. Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PROXY_SSL_OPTIONS (int)

Set proxy SSL behavior options, which is a bitmask of the following constants: CURLSSLOPT_ALLOW_BEAST, CURLSSLOPT_NO_REVOKE, CURLSSLOPT_NO_PARTIALCHAIN Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PROXY_SSL_VERIFYHOST (int)

Set to 2 to verify in the HTTPS proxy's certificate name fields against the proxy name. When set to 0 the connection succeeds regardless of the names used in the certificate. Use that ability with caution! 1 treated as a debug option in curl 7.28.0 and earlier. From curl 7.28.1 to 7.65.3 CURLE_BAD_FUNCTION_ARGUMENT is returned. From curl 7.66.0 onwards 1 and 2 is treated as the same value. In production environments the value of this option should be kept at 2 (default value). Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PROXY_SSL_VERIFYPEER (int)

false to stop cURL from verifying the peer's certificate. Alternate certificates to verify against can be specified with the CURLOPT_CAINFO option or a certificate directory can be specified with the CURLOPT_CAPATH option. When set to false, the peer certificate verification succeeds regardless. true by default. Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PROXY_TLS13_CIPHERS (int)

The list of cipher suites to use for the TLS 1.3 connection to a proxy. The list must be syntactically correct, it consists of one or more cipher suite strings separated by colons. This option is currently used only when curl is built to use OpenSSL 1.1.1 or later. If you are using a different SSL backend you can try setting TLS 1.3 cipher suites by using the CURLOPT_PROXY_SSL_CIPHER_LIST option. Available when built with OpenSSL >= 1.1.1. Константа доступна с 7.3.0 и cURL 7.61.0

CURLOPT_PROXY_TLSAUTH_PASSWORD (int)

The password to use for the TLS authentication method specified with the CURLOPT_PROXY_TLSAUTH_TYPE option. Requires that the CURLOPT_PROXY_TLSAUTH_USERNAME option to also be set. Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PROXY_TLSAUTH_TYPE (int)

The method of the TLS authentication used for the HTTPS connection. Supported method is "SRP".

Замечание:

Secure Remote Password (SRP) authentication for TLS provides mutual authentication if both sides have a shared secret. To use TLS-SRP, you must also set the CURLOPT_PROXY_TLSAUTH_USERNAME and CURLOPT_PROXY_TLSAUTH_PASSWORD options.

Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PROXY_TLSAUTH_USERNAME (int)

The username to use for the HTTPS proxy TLS authentication method specified with the CURLOPT_PROXY_TLSAUTH_TYPE option. Requires that the CURLOPT_PROXY_TLSAUTH_PASSWORD option to also be set. Константа доступна с 7.3.0 и cURL 7.52.0

CURLOPT_PUT (int)

true to HTTP PUT a file. The file to PUT must be set with CURLOPT_INFILE and CURLOPT_INFILESIZE.

CURLOPT_QUICK_EXIT (int)

Константа доступна с 8.3.0 и cURL 7.87.0

CURLOPT_QUOTE (int)

An array of FTP commands to execute on the server prior to the FTP request.

CURLOPT_RANDOM_FILE (int)

A filename to be used to seed the random number generator for SSL.

CURLOPT_RANGE (int)

Range(s) of data to retrieve in the format "X-Y" where X or Y are optional. HTTP transfers also support several intervals, separated with commas in the format "X-Y,N-M".

CURLOPT_READFUNCTION (int)

A callback accepting three parameters. The first is the cURL resource, the second is a stream resource provided to cURL through the option CURLOPT_INFILE, and the third is the maximum amount of data to be read. The callback must return a string with a length equal or smaller than the amount of data requested, typically by reading it from the passed stream resource. It should return an empty string to signal EOF.

CURLOPT_REDIR_PROTOCOLS (int)

Bitmask of CURLPROTO_* values. If used, this bitmask limits what protocols libcurl may use in a transfer that it follows to in a redirect when CURLOPT_FOLLOWLOCATION is enabled. This allows you to limit specific transfers to only be allowed to use a subset of protocols in redirections. By default libcurl will allow all protocols except for FILE and SCP. This is a difference compared to pre-7.19.4 versions which unconditionally would follow to all protocols supported. See also CURLOPT_PROTOCOLS for protocol constant values. Константа доступна с cURL 7.19.4.

CURLOPT_REDIR_PROTOCOLS_STR (int)

Константа доступна с 8.3.0 и cURL 7.85.0.

CURLOPT_REFERER (int)

The contents of the "Referer: " header to be used in a HTTP request.

CURLOPT_REQUEST_TARGET (int)

Константа доступна с 7.3.0 и cURL 7.55.0.

CURLOPT_RESOLVE (int)

Provide a custom address for a specific host and port pair. An array of hostname, port, and IP address strings, each element separated by a colon. In the format: array("example.com:80:127.0.0.1") Константа доступна с cURL 7.21.3.

CURLOPT_RESUME_FROM (int)

The offset, in bytes, to resume a transfer from.

CURLOPT_RETURNTRANSFER (int)

true to return the transfer as a string of the return value of curl_exec() instead of outputting it directly.

CURLOPT_SAFE_UPLOAD (int)

Always true, what disables support for the @ prefix for uploading files in CURLOPT_POSTFIELDS, which means that values starting with @ can be safely passed as fields. CURLFile may be used for uploads instead.

CURLOPT_SASL_AUTHZID (int)

The authorization identity (authzid) for the transfer. Only applicable to the PLAIN SASL authentication mechanism where it is optional. When not specified, only the authentication identity (authcid) as specified by the username will be sent to the server, along with the password. The server will derive the authzid from the authcid when not provided, which it will then use internally. Константа доступна с 8.2.0 и cURL 7.66.0

CURLOPT_SASL_IR (int)

true to enable sending the initial response in the first packet. Константа доступна с 7.0.7 и cURL 7.31.0

CURLOPT_SERVICE_NAME (int)

The authentication service name. Константа доступна с 7.0.7 и cURL 7.43.0

CURLOPT_SHARE (int)

A result of curl_share_init(). Makes the cURL handle to use the data from the shared handle.

CURLOPT_SOCKS5_AUTH (int)

The SOCKS5 authentication method(s) to use. The options are: CURLAUTH_BASIC, CURLAUTH_GSSAPI, CURLAUTH_NONE. The bitwise | (or) operator can be used to combine more than one method. If this is done, cURL will poll the server to see what methods it supports and pick the best one. CURLAUTH_BASIC allows username/password authentication. CURLAUTH_GSSAPI allows GSS-API authentication. CURLAUTH_NONE allows no authentication. Defaults to CURLAUTH_BASIC|CURLAUTH_GSSAPI. Set the actual username and password with the CURLOPT_PROXYUSERPWD option. Константа доступна с 7.3.0 и cURL 7.55.0

CURLOPT_SSH_AUTH_TYPES (int)

A bitmask consisting of one or more of CURLSSH_AUTH_PUBLICKEY, CURLSSH_AUTH_PASSWORD, CURLSSH_AUTH_HOST, CURLSSH_AUTH_KEYBOARD. Set to CURLSSH_AUTH_ANY to let libcurl pick one. Константа доступна с cURL 7.16.1.

CURLOPT_SSH_COMPRESSION (int)

true to enable built-in SSH compression. This is a request, not an order; the server may or may not do it. Константа доступна с 7.3.0 и cURL 7.56.0

CURLOPT_SSH_HOSTKEYFUNCTION (int)

Константа доступна с 8.3.0 и cURL 7.84.0

CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 (int)

A string containing 32 hexadecimal digits. The string should be the MD5 checksum of the remote host's public key, and libcurl will reject the connection to the host unless the md5sums match. This option is only for SCP and SFTP transfers. Константа доступна с cURL 7.17.1.

CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256 (int)

Base64-encoded SHA256 hash of the remote host's public key. The transfer will fail if the given hash does not match the hash the remote host provides. Константа доступна с 8.2.0 и cURL 7.80.0

CURLOPT_SSH_PRIVATE_KEYFILE (int)

The file name for your private key. If not used, libcurl defaults to $HOME/.ssh/id_dsa if the HOME environment variable is set, and just "id_dsa" in the current directory if HOME is not set. If the file is password-protected, set the password with CURLOPT_KEYPASSWD. Константа доступна с cURL 7.16.1.

CURLOPT_SSH_PUBLIC_KEYFILE (int)

The file name for your public key. If not used, libcurl defaults to $HOME/.ssh/id_dsa.pub if the HOME environment variable is set, and just "id_dsa.pub" in the current directory if HOME is not set. Константа доступна с cURL 7.16.1.

CURLOPT_SSLCERT (int)

The name of a file containing a PEM formatted certificate.

CURLOPT_SSLCERTPASSWD (int)

The password required to use the CURLOPT_SSLCERT certificate.

CURLOPT_SSLCERTTYPE (int)

The format of the certificate. Supported formats are "PEM" (default), "DER", and "ENG". As of OpenSSL 0.9.3, "P12" (for PKCS#12-encoded files) is also supported. Константа доступна с cURL 7.9.3.

CURLOPT_SSLCERT_BLOB (int)

SSL client certificate from memory blob. Константа доступна с 8.1.0 и cURL 7.71.0.

CURLOPT_SSLENGINE (int)

The identifier for the crypto engine of the private SSL key specified in CURLOPT_SSLKEY.

CURLOPT_SSLENGINE_DEFAULT (int)

The identifier for the crypto engine used for asymmetric crypto operations.

CURLOPT_SSLKEY (int)

The name of a file containing a private SSL key.

CURLOPT_SSLKEYPASSWD (int)

The secret password needed to use the private SSL key specified in CURLOPT_SSLKEY.

Замечание:

Since this option contains a sensitive password, remember to keep the PHP script it is contained within safe.

CURLOPT_SSLKEYTYPE (int)

The key type of the private SSL key specified in CURLOPT_SSLKEY. Supported key types are "PEM" (default), "DER", and "ENG".

CURLOPT_SSLKEY_BLOB (int)

Private key for client cert from memory blob. Константа доступна с 8.1.0 и cURL 7.71.0.

CURLOPT_SSLVERSION (int)

One of CURL_SSLVERSION_DEFAULT, CURL_SSLVERSION_TLSv1, CURL_SSLVERSION_SSLv2, CURL_SSLVERSION_SSLv3, CURL_SSLVERSION_TLSv1_0, CURL_SSLVERSION_TLSv1_1, CURL_SSLVERSION_TLSv1_2, CURL_SSLVERSION_TLSv1_3 . The maximum TLS version can be set by using one of the CURL_SSLVERSION_MAX_* constants. It is also possible to bitwise OR one of the CURL_SSLVERSION_* constants with one of the CURL_SSLVERSION_MAX_*. CURL_SSLVERSION_MAX_DEFAULT (the maximum version supported by the library), CURL_SSLVERSION_MAX_TLSv1_0, CURL_SSLVERSION_MAX_TLSv1_1, CURL_SSLVERSION_MAX_TLSv1_2, CURL_SSLVERSION_MAX_TLSv1_3 .

Внимание

It is better to not set this option and leave the defaults. As setting this to CURL_SSLVERSION_SSLv2 or CURL_SSLVERSION_SSLv3 is very dangerous, given the known vulnerabilities in SSLv2 and SSLv3.

CURLOPT_SSL_CIPHER_LIST (int)

A list of ciphers to use for SSL. For example, RC4-SHA and TLSv1 are valid cipher lists.

CURLOPT_SSL_EC_CURVES (int)

A colon delimited list of elliptic curve algorithms. For example, X25519:P-521 is a valid list of two elliptic curves. This option defines the client's key exchange algorithms in the SSL handshake, if the SSL backend cURL is built to use supports it. Константа доступна с 8.2.0 и cURL 7.73.0

CURLOPT_SSL_ENABLE_ALPN (int)

false to disable ALPN in the SSL handshake (if the SSL backend libcurl is built to use supports it), which can be used to negotiate http2. Константа доступна с 7.0.7 и cURL 7.36.0

CURLOPT_SSL_ENABLE_NPN (int)

false to disable NPN in the SSL handshake (if the SSL backend libcurl is built to use supports it), which can be used to negotiate http2. Константа доступна с 7.0.7 и cURL 7.36.0

CURLOPT_SSL_FALSESTART (int)

true to enable TLS false start. Константа доступна с 7.0.7 и cURL 7.42.0

CURLOPT_SSL_OPTIONS (int)

Set SSL behavior options, which is a bitmask of the following constants: CURLSSLOPT_ALLOW_BEAST, CURLSSLOPT_NO_REVOKE, CURLSSLOPT_AUTO_CLIENT_CERT, CURLSSLOPT_NATIVE_CA, CURLSSLOPT_NO_PARTIALCHAIN, CURLSSLOPT_REVOKE_BEST_EFFORT Константа доступна с 7.0.7. и cURL 7.25.0

CURLOPT_SSL_VERIFYHOST (int)

2 to verify that a Common Name field or a Subject Alternate Name field in the SSL peer certificate matches the provided hostname. 0 to not check the names. 1 should not be used. In production environments the value of this option should be kept at 2 (default value). Support for value 1 removed in cURL 7.28.1.

CURLOPT_SSL_VERIFYPEER (int)

false to stop cURL from verifying the peer's certificate. Alternate certificates to verify against can be specified with the CURLOPT_CAINFO option or a certificate directory can be specified with the CURLOPT_CAPATH option. true by default as of cURL 7.10. Default bundle installed as of cURL 7.10.

CURLOPT_SSL_VERIFYSTATUS (int)

true to verify the certificate's status. Константа доступна с 7.0.7 и cURL 7.41.0

CURLOPT_STDERR (int)

An alternative location to output errors to instead of STDERR.

CURLOPT_STREAM_WEIGHT (int)

Set the numerical stream weight (a number between 1 and 256). Константа доступна с 7.0.7 и cURL 7.46.0

CURLOPT_SUPPRESS_CONNECT_HEADERS (int)

true to suppress proxy CONNECT response headers from the user callback functions CURLOPT_HEADERFUNCTION and CURLOPT_WRITEFUNCTION, when CURLOPT_HTTPPROXYTUNNEL is used and a CONNECT request is made. Константа доступна с 7.3.0 и cURL 7.54.0

CURLOPT_TCP_FASTOPEN (int)

true to enable TCP Fast Open. Константа доступна с 7.0.7 и cURL 7.49.0

CURLOPT_TCP_KEEPALIVE (int)

If set to 1, TCP keepalive probes will be sent. The delay and frequency of these probes can be controlled by the CURLOPT_TCP_KEEPIDLE and CURLOPT_TCP_KEEPINTVL options, provided the operating system supports them. If set to 0 (default) keepalive probes are disabled. Константа доступна с cURL 7.25.0

CURLOPT_TCP_KEEPIDLE (int)

Sets the delay, in seconds, that the operating system will wait while the connection is idle before sending keepalive probes, if CURLOPT_TCP_KEEPALIVE is enabled. Not all operating systems support this option. The default is 60. Константа доступна с cURL 7.25.0

CURLOPT_TCP_KEEPINTVL (int)

Sets the interval, in seconds, that the operating system will wait between sending keepalive probes, if CURLOPT_TCP_KEEPALIVE is enabled. Not all operating systems support this option. The default is 60. Константа доступна с cURL 7.25.0

CURLOPT_TCP_NODELAY (int)

true to disable TCP's Nagle algorithm, which tries to minimize the number of small packets on the network. Константа доступна с cURL 7.11.2.

CURLOPT_TFTP_NO_OPTIONS (int)

true to not send TFTP options requests. Константа доступна с 7.0.7 и cURL 7.48.0

CURLOPT_TIMECONDITION (int)

How CURLOPT_TIMEVALUE is treated. Use CURL_TIMECOND_IFMODSINCE to return the page only if it has been modified since the time specified in CURLOPT_TIMEVALUE. If it hasn't been modified, a "304 Not Modified" header will be returned assuming CURLOPT_HEADER is true. Use CURL_TIMECOND_IFUNMODSINCE for the reverse effect. Use CURL_TIMECOND_NONE to ignore CURLOPT_TIMEVALUE and always return the page. CURL_TIMECOND_NONE is the default. Before cURL 7.46.0 the default was CURL_TIMECOND_IFMODSINCE.

CURLOPT_TIMEOUT (int)

The maximum number of seconds to allow cURL functions to execute.

CURLOPT_TIMEOUT_MS (int)

The maximum number of milliseconds to allow cURL functions to execute. If libcurl is built to use the standard system name resolver, that portion of the connect will still use full-second resolution for timeouts with a minimum timeout allowed of one second. Константа доступна с cURL 7.16.2.

CURLOPT_TIMEVALUE (int)

The time in seconds since January 1st, 1970. The time will be used by CURLOPT_TIMECONDITION.

CURLOPT_TIMEVALUE_LARGE (int)

The time in seconds since January 1st, 1970. The time will be used by CURLOPT_TIMECONDITION. Defaults to zero. The difference between this option and CURLOPT_TIMEVALUE is the type of the argument. On systems where 'long' is only 32 bit wide, this option has to be used to set dates beyond the year 2038. Константа доступна с 7.3.0 и cURL 7.59.0

CURLOPT_TLS13_CIPHERS (int)

The list of cipher suites to use for the TLS 1.3 connection. The list must be syntactically correct, it consists of one or more cipher suite strings separated by colons. This option is currently used only when curl is built to use OpenSSL 1.1.1 or later. If you are using a different SSL backend you can try setting TLS 1.3 cipher suites by using the CURLOPT_SSL_CIPHER_LIST option. Available when built with OpenSSL >= 1.1.1. Константа доступна с 7.3.0 и cURL 7.61.0

CURLOPT_TRANSFERTEXT (int)

true to use ASCII mode for FTP transfers. For LDAP, it retrieves data in plain text instead of HTML. On Windows systems, it will not set STDOUT to binary mode.

CURLOPT_UNIX_SOCKET_PATH (int)

Enables the use of Unix domain sockets as connection endpoint and sets the path to the given string. Константа доступна с 7.0.7 и cURL 7.40.0

CURLOPT_UNRESTRICTED_AUTH (int)

true to keep sending the username and password when following locations (using CURLOPT_FOLLOWLOCATION), even when the hostname has changed.

CURLOPT_UPKEEP_INTERVAL_MS (int)

Some protocols have "connection upkeep" mechanisms. These mechanisms usually send some traffic on existing connections in order to keep them alive. This option defines the connection upkeep interval. Currently, the only protocol with a connection upkeep mechanism is HTTP/2. When the connection upkeep interval is exceeded, an HTTP/2 PING frame is sent on the connection. Default is 60 seconds. Константа доступна с 8.2.0 и cURL 7.62.0

CURLOPT_UPLOAD (int)

true to prepare for an upload.

CURLOPT_UPLOAD_BUFFERSIZE (int)

Preferred buffer size in bytes for the cURL upload buffer. The upload buffer size by default is 64 kilobytes. The maximum buffer size allowed to be set is 2 megabytes. The minimum buffer size allowed to be set is 16 kilobytes. Константа доступна с 8.2.0 и cURL 7.62.0

CURLOPT_URL (int)

The URL to fetch. This can also be set when initializing a session with curl_init().

CURLOPT_USERAGENT (int)

Содержимое заголовка "User-Agent: ", которое модуль отправит в HTTP-запросе.

CURLOPT_USERNAME (int)

Имя пользователя, которое модуль отправит при аутентификации. Константа доступна с cURL 7.19.1

CURLOPT_USERPWD (int)

Имя пользователя и пароль в формате "[username]:[password]", которые модуль отправит при установке соединения.

CURLOPT_VERBOSE (int)

Со значением true опция выводит подробную информацию о передаче. Записывает вывод в поток STDERR или в файл, который указали в опции CURLOPT_STDERR.

CURLOPT_WRITEFUNCTION (int)

Callback-функция, которая принимает два аргумента. Первый — cURL-ресурс, второй — строка с данными для записи. Сохранить данные требуется функцией обратного вызова. Функция должна вернуть точное количество байтов, которое записала, или передача прервётся с ошибкой.

CURLOPT_WRITEHEADER (int)

Файл, в который записываются заголовки передачи.

CURLOPT_WS_OPTIONS (int)

Константа доступна с 8.3.0 и cURL 7.86.0

CURLOPT_XFERINFOFUNCTION (int)

Callback-функция, которая принимает два аргумента. У опции то же назначение, что и у опции CURLOPT_PROGRESSFUNCTION, но более современенное, лучше предпочесть эту cURL-опцию. Константа доступна с 8.2.0 и cURL 7.32.0.

CURLOPT_XOAUTH2_BEARER (int)

Указывает токен доступа для протокола OAuth 2.0. Константа доступна с 7.0.7 и cURL 7.33.0

curl_share_setopt()
Константы Описание
CURL_LOCK_DATA_CONNECT (int) Разрешает или отменяет общий доступ к кешу соединений для простых дескрипторов. Константа доступна с PHP 7.3.0 и cURL 7.10.0
Разрешает или отменяет общий доступ к блокам данных cookie для простых дескрипторов.
CURL_LOCK_DATA_DNS (int) Разрешает или отменяет общий доступ к DNS-кешу для простых дескрипторов. Обратите внимание: при работе с мультидескрипторами модуля cURL, каждый дескриптор, который добавили к одному и тому же мультидескриптору, по умолчанию совместно используют DNS-кеш без этой опции.
CURL_LOCK_DATA_PSL (int) Разрешает или отменяет общий доступ к списку публичных суффиксов (Public Suffix List) для простых дескрипторов. Константа доступна с PHP 7.3.0 и cURL 7.61.0
CURL_LOCK_DATA_SSL_SESSION (int) Разрешает или отменяет общий доступ к идентификаторам SSL-сеансов для простых дескрипторов. За счёт совместного доступа сокращается время, которое требуется для SSL-рукопожатия при переподключении к тому же серверу. Обратите внимание, что по умолчанию идентификаторы SSL-сессий переиспользуются внутри одного и того же дескриптора.
CURLSHOPT_NONE (int)
CURLSHOPT_SHARE (int) Указывает, к какому типу данных требуется разрешить общий доступ.
CURLSHOPT_UNSHARE (int) Указывает, к какому типу данных больше не требуется общий доступ.
curl_getinfo()
Константы Описание
CURLINFO_APPCONNECT_TIME (int) Время в секундах, которое прошло от запуска до установления SSL- или SSH-подключения или рукопожатия с удалённым хостом
CURLINFO_APPCONNECT_TIME_T (int) Время в микросекундах, которое прошло от запуска до завершения SSL- или SSH-подключения или рукопожатия с удалённым хостом. Опция доступна с PHP 7.3.0 и cURL 7.61.0
CURLINFO_CAINFO (int) Путь ко встроенному сертификату удостоверяющиего центра по умолчанию. Опция доступна с PHP 8.3.0 и cURL 7.84.0
CURLINFO_CAPATH (int) Строка пути встроенного сертификата удостоверяющего центра по умолчанию. Опция доступна с PHP 8.3.0 и cURL 7.84.0
CURLINFO_CERTINFO (int) Цепочка сертификатов TLS
CURLINFO_CONDITION_UNMET (int) Информация о невыполненных за отведённое время условиях
CURLINFO_CONNECT_TIME (int) Время в секундах, затраченное на установку соединения
CURLINFO_CONNECT_TIME_T (int) Общее время в микросекундах, которое прошло от запуска до завершения подключения к удалённому хосту или прокси-серверу. Опция доступна с PHP 7.3.0 и cURL 7.61.0
CURLINFO_CONTENT_LENGTH_DOWNLOAD (int) Размер полученных данных, прочитанный из поля заголовка Content-Length
CURLINFO_CONTENT_LENGTH_DOWNLOAD_T (int) Размер полученных данных. Это значение считывается из поля Content-Length. Значение будет равно -1, если размер неизвестен. Опция доступна с PHP 7.3.0 и cURL 7.55.0
CURLINFO_CONTENT_LENGTH_UPLOAD (int) Размер переданных данных
CURLINFO_CONTENT_LENGTH_UPLOAD_T (int) Размер отправленных данных. Значение будет равно -1, если размер неизвестен. Опция доступна с PHP 7.3.0 и cURL 7.55.0
CURLINFO_CONTENT_TYPE (int) Значение заголовка Content-Type запрошенного документа. Значение NULL указывает, что сервер не отправил допустимый заголовок Content-Type
CURLINFO_COOKIELIST (int) Все известные cookies
CURLINFO_EFFECTIVE_METHOD (int) Получает HTTP-метод, который использовался последним.
CURLINFO_EFFECTIVE_URL (int) Последний эффективный URL (в цепочке перенаправлений — прим. перев.)
CURLINFO_FILETIME (int) Время получения документа по часам удалённого сервера, если параметр CURLOPT_FILETIME включён для дескриптора cURL; если возвращается значение -1, то время получения документа неизвестно
CURLINFO_FILETIME_T (int) Время получения документа в виде метки времени Unix по часам удалённого сервера, альтернатива опции CURLINFO_FILETIME, чтобы разрешить системам с 32-битными long-переменными извлекать даты за пределами диапазона 32-битных меток времени Опция доступна с PHP 7.3.0 и cURL 7.59.0
CURLINFO_FTP_ENTRY_PATH (int) Путь входа на FTP-сервер
CURLINFO_HEADER_OUT (int) Отправленная строка запроса. Чтобы этот параметр работал, нужно добавить опцию CURLINFO_HEADER_OUT в дескриптор через вызов функции curl_setopt()
CURLINFO_HEADER_SIZE (int) Суммарный размер полученных заголовков
CURLINFO_HTTPAUTH_AVAIL (int) Битовая маска доступного метода или методов аутентификации на основе данных предыдущего ответа
CURLINFO_HTTP_CODE (int) Последний код ответа. С cURL 7.10.8 это устаревший псевдоним опции CURLINFO_RESPONSE_CODE.
CURLINFO_HTTP_CONNECTCODE (int) Код ответа на запрос CONNECT
CURLINFO_HTTP_VERSION (int) Версия HTTP-протокола последнего соединении. Возвращаемое значение будет равно значению константы из семейства CURL_HTTP_VERSION_* или 0, если версию невозможно определить Опция доступна с PHP 7.3.0 и cURL 7.50.0
CURLINFO_LASTONE (int) Последнее значение перечисления в базовом перечислении CURLINFO в библиотеке libcurl.
CURLINFO_LOCAL_IP (int) Локальный (исходящий) IP-адрес последнего соединения
CURLINFO_LOCAL_PORT (int) Локальный (исходящий) порт последнего соединения
CURLINFO_NAMELOOKUP_TIME (int) Время в секундах, затраченное на разрешение имени
CURLINFO_NAMELOOKUP_TIME_T (int) Время в микросекундах от запуска до разрешения имени. Опция доступна с PHP 7.3.0 и cURL 7.61.0
CURLINFO_NUM_CONNECTS (int) Количество соединений, которые модулю curl пришлось создать, что успешно выполнить предыдущую передачу
CURLINFO_OS_ERRNO (int) Значение переменной Errno в случае сбоя соединения. Номер ошибки зависит от ОС и особенностей системы
CURLINFO_PRETRANSFER_TIME (int) Время в секундах от запуска до момента начала передачи файла
CURLINFO_PRETRANSFER_TIME_T (int) Время в микросекундах от запуска до момента начала передачи файла. Опция доступна с PHP 7.3.0 и cURL 7.61.0
CURLINFO_PRIMARY_IP (int) IP-адрес последнего соединения
CURLINFO_PRIMARY_PORT (int) Порт назначения последнего соединения
CURLINFO_PRIVATE (int) Закрытые данные, связанные с текущим дескриптором cURL, которые до этого были установлены функцией curl_setopt() с опцией CURLOPT_PRIVATE
CURLINFO_PROTOCOL (int) Протокол последнего HTTP-соединения. Возвращаемое значение будет равно значению константы семейства CURLPROTO_*. Опция доступна с PHP 7.3.0 и cURL 7.52.0
CURLINFO_PROXYAUTH_AVAIL (int) Битовая маска доступного метода или методов аутентификации прокси-сервера на основе данных предыдущего ответа
CURLINFO_PROXY_ERROR (int) Подробный код ошибки прокси-сервера (SOCKS), когда последняя передача вернула ошибку CURLE_PROXY error. Возвращаемое значение будет равно значению константы из семейства CURLPX_*. Код ошибки будет равен значению константы CURLPX_OK, если код ответа не был доступен. Опция доступна с PHP 8.2.0 и cURL 7.73.0
CURLINFO_PROXY_SSL_VERIFYRESULT (int) Результат запрошенной проверки сертификата (с опцией CURLOPT_PROXY_SSL_VERIFYPEER option). Работает только для серверов HTTPS-прокси. Опция доступна с PHP 7.3.0 и cURL 7.52.0
CURLINFO_REDIRECT_COUNT (int) Число перенаправлений, если опцию CURLOPT_FOLLOWLOCATION включили
CURLINFO_REDIRECT_TIME (int) Общее время в секундах, которое потребовалось для всех шагов перенаправления до запуска последней транзакции, если опцию CURLOPT_FOLLOWLOCATION включили
CURLINFO_REDIRECT_TIME_T (int) Общее время в микросекундах, которое потребовалось для всех шагов перенаправления, включая поиск имени, подключение, предварительную о основную передачу до запуска окончательной транзакции. Опция доступна с PHP 7.3.0 и cURL 7.61.0
CURLINFO_REDIRECT_URL (int) Если опцию CURLOPT_FOLLOWLOCATION отключили: URL-адрес перенаправления, найденный в последней транзакции, который в следующий раз надо запросить вручную. Если опцию CURLOPT_FOLLOWLOCATION включили: пустое значение. Тогда URL-адрес перенаправления доступен в опции CURLINFO_EFFECTIVE_URL
CURLINFO_REFERER (int) Заголовок реферера. Опция доступна с PHP 8.2.0 и cURL 7.76.0
CURLINFO_REQUEST_SIZE (int) Общий размер отправленных запросов, работает пока только для HTTP-запросов
CURLINFO_RESPONSE_CODE (int) Последний код ответа. Опция доступна с cURL 7.10.8
CURLINFO_RETRY_AFTER (int) Информация из заголовка Retry-After: или ноль, если допустимого заголовка не было. Опция доступна с PHP 8.2.0 и cURL 7.66.0
CURLINFO_RTSP_CLIENT_CSEQ (int) Следующий CSeq-заголовок RTSP-клиента
CURLINFO_RTSP_CSEQ_RECV (int) Последний полученный заголовок CSeq
CURLINFO_RTSP_SERVER_CSEQ (int) Следующий CSeq-заголовок RTSP-сервера
CURLINFO_RTSP_SESSION_ID (int) Идентификатор RTSP-сессии
CURLINFO_SCHEME (int) Схема URL последнего соединения. Опция доступна с PHP 7.3.0 и cURL 7.52.0
CURLINFO_SIZE_DOWNLOAD (int) Общее количество полученных байтов
CURLINFO_SIZE_DOWNLOAD_T (int) Общее количество байтов, которые были получены. Число будет указано только для последней передачи и будет сбрасываться при каждой новой передаче. Опция доступна с PHP 7.3.0 и cURL 7.50.0
CURLINFO_SIZE_UPLOAD (int) Общее количество переданных байтов
CURLINFO_SIZE_UPLOAD_T (int) Общее количество байтов, которые были переданы. Опция доступна с PHP 7.3.0 и cURL 7.50.0
CURLINFO_SPEED_DOWNLOAD (int) Средняя скорость получения данных
CURLINFO_SPEED_DOWNLOAD_T (int) Средняя скорость получения данных в байтах в секунду, которую curl измерил в конце передачи. Опция доступна с PHP 7.3.0 и cURL 7.50.0
CURLINFO_SPEED_UPLOAD (int) Средняя скорость передачи данных
CURLINFO_SPEED_UPLOAD_T (int) Средняя скорость передачи данных в байтах в секунду, которую curl измерил в конце передачи. Опция доступна с PHP 7.3.0 и cURL 7.50.0
CURLINFO_SSL_ENGINES (int) Список поддерживаемых криптодвижков библиотеки OpenSSL
CURLINFO_SSL_VERIFYRESULT (int) Результат проверки SSL-сертификата, запрошенный с опцией CURLOPT_SSL_VERIFYPEER
CURLINFO_STARTTRANSFER_TIME (int) Время в секундах от запуска передачи до получения первого байта
CURLINFO_STARTTRANSFER_TIME_T (int) Время в микросекундах от запуска передачи до получения первого байта. Опция доступна с PHP 7.3.0 и cURL 7.61.0
CURLINFO_TOTAL_TIME (int) Общее время транзакции в секундах для последней передачи
CURLINFO_TOTAL_TIME_T (int) Общее время предыдущей передачи в микросекундах, включая разрешение имени, TCP-соединение и т. д.. Опция доступна с PHP 7.3.0 и cURL 7.61.0
curl_multi_setopt()
Константы Описание
CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE (int) Указывает порог длины фрагмента в байтах для конвейерной обработки. Константа доступна с PHP 7.0.7 и cURL 7.30.0
CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE (int) Указывает порог размера в байтах для назначения штрафных санкций при конвейерной обработке. Константа доступна с PHP 7.0.7 и cURL 7.30.0
CURLMOPT_MAXCONNECTS (int) Указывает максимальное количество одновременно открытых соединений, которое библиотеке libcurl разрешается кешировать. По умолчанию размер будет увеличен до уровня, который вместит в 4 раза больше дескрипторов, чем добавили функцией curl_multi_add_handle(). Когда кеш заполняется, модуль curl закрывает самое старое соединение в кеше, чтобы предотвратить увеличение количества открытых подключений. Константа доступна с cURL 7.16.3.
CURLMOPT_MAX_CONCURRENT_STREAMS (int) Указывает максимальное количество одновременных потоков для соединений, которые модулю cURL требуется поддерживать при соединениях по протоколу HTTP/2. Допустимый диапазон значений составляет от 1 до 2 147 483 647 (2^31 - 1). Значение, которое сюда передали, будет учитываться на основе свойств других ресурсов системы. Значение по умолчанию равняется 100. Константа доступна с PHP 8.2.0 и cURL 7.67.0.
CURLMOPT_MAX_HOST_CONNECTIONS (int) Указывает максимальное количество подключений к одному хосту. Константа доступна с PHP 7.0.7 и cURL 7.30.0
CURLMOPT_MAX_PIPELINE_LENGTH (int) Указывает максимальное количество запросов в конвейере. Константа доступна с PHP 7.0.7 и cURL 7.30.0
CURLMOPT_MAX_TOTAL_CONNECTIONS (int) Указывает максимальное количество одновременно открытых соединений. Константа доступна с PHP 7.0.7 и cURL 7.30.0
CURLMOPT_PIPELINING (int) Значение 1 включает, а 0 выключает конвейерную обработку. Включение конвейерной обработки для мультидескриптора заставит дескриптор выполнить конвейерную обработку по HTTP-протоколу настолько, насколько это окажется возможным для передач через этот дескриптор. Это означает, что добавление второго запроса, который может использовать уже существующее соединение, «конвейеризует» второй запрос через то же соединение. Начиная с cURL 7.43.0 это значение — битовая маска, и при передаче значения 2 модуль попытается мультиплексировать новую передачу через существующие HTTP/2-соединение. Значение 3 инструктирует модуль cURL запрашивать конвейерную обработку и мультиплексирование независимо друг от друга. Начиная с cURL 7.62.0 установка бита конвейерной обработки не даёт никакого эффекта. Вместо целочисленных литералов разрешается также указывать константы семейства CURLPIPE_*. Константа доступна с cURL 7.16.0
CURLMOPT_PUSHFUNCTION (int)

Модуль зарегистрирует объект callable, который указали в опции, для обработки пуш-уведомлений сервера. Допускается следующая сигнатура вызываемого объекта:

pushfunction(resource $parent_ch, resource $pushed_ch, array $headers): int
parent_ch
Родительский cURL-дескриптор (запрос, который сделал клиент).
pushed_ch
Новый cURL-дескриптор для отправленного push-запроса.
headers
Заголовки push-обещания.
Push-функция должна возвращать либо CURL_PUSH_OK, если может обработать пуш, или CURL_PUSH_DENY, чтобы отклонить пуш. Константа доступна с PHP 7.1.0 и cURL 7.44.0

cURL protocol constants
Константы Описание
CURLPROTO_ALL (int)
CURLPROTO_DICT (int)
CURLPROTO_FILE (int)
CURLPROTO_FTP (int)
CURLPROTO_FTPS (int)
CURLPROTO_GOPHER (int)
CURLPROTO_HTTP (int)
CURLPROTO_HTTPS (int)
CURLPROTO_IMAP (int)
CURLPROTO_IMAPS (int)
CURLPROTO_LDAP (int)
CURLPROTO_LDAPS (int)
CURLPROTO_MQTT (int) Константа доступна с PHP 8.2.0 и cURL 7.71.0.
CURLPROTO_POP3 (int)
CURLPROTO_POP3S (int)
CURLPROTO_RTMP (int)
CURLPROTO_RTMPE (int)
CURLPROTO_RTMPS (int)
CURLPROTO_RTMPT (int)
CURLPROTO_RTMPTE (int)
CURLPROTO_RTMPTS (int)
CURLPROTO_RTSP (int)
CURLPROTO_SCP (int)
CURLPROTO_SFTP (int)
CURLPROTO_SMB (int) Константа доступна с PHP 7.0.7 и cURL 7.40.0.
CURLPROTO_SMBS (int) Константа доступна с PHP 7.0.7 и cURL 7.40.0.
CURLPROTO_SMTP (int)
CURLPROTO_SMTPS (int)
CURLPROTO_TELNET (int)
CURLPROTO_TFTP (int)
Константы ошибок cURL
Константы Описание
CURLE_ABORTED_BY_CALLBACK (int) Callback-функция прервала выполнение. Обратный вызов вернул модулю libcurl «прерывание».
CURLE_BAD_CALLING_ORDER (int)
CURLE_BAD_CONTENT_ENCODING (int) Нераспознанная кодировка передачи.
CURLE_BAD_DOWNLOAD_RESUME (int) Не удалось возобновить загрузку, поскольку указанное смещение вышло за пределы файла.
CURLE_BAD_FUNCTION_ARGUMENT (int) Функцию вызвали с неверным параметром.
CURLE_BAD_PASSWORD_ENTERED (int)
CURLE_COULDNT_CONNECT (int) Не удалось подключиться к хосту или прокси.
CURLE_COULDNT_RESOLVE_HOST (int) Не удалось разрешить хост. Удаленный хост не был разрешён.
CURLE_COULDNT_RESOLVE_PROXY (int) Не удалось разрешить прокси. Не удалось разрешить прокси-хост.
CURLE_FAILED_INIT (int) Early initialization code failed. Скорее всего, это внутренняя ошибка или проблема, или проблема с ресурсами, когда что-то фундаментальное не может быть выполнено во время инициализации.
CURLE_FILESIZE_EXCEEDED (int) Превышен максимальный размер файла.
CURLE_FILE_COULDNT_READ_FILE (int) Не удалось открыть файл, путь к которому указали через FILE://. Скорее всего, потому, что путь к файлу не идентифицирует существующий файл или из-за отсутствия соответствующих прав доступа к файлу.
CURLE_FTP_ACCESS_DENIED (int)
CURLE_FTP_BAD_DOWNLOAD_RESUME (int)
CURLE_FTP_CANT_GET_HOST (int) Внутренняя ошибка при поиске хоста для нового соединения.
CURLE_FTP_CANT_RECONNECT (int)
CURLE_FTP_COULDNT_GET_SIZE (int)
CURLE_FTP_COULDNT_RETR_FILE (int) Это был или неожиданный ответ на команду RETR, или передача нулевого байта завершена.
CURLE_FTP_COULDNT_SET_ASCII (int)
CURLE_FTP_COULDNT_SET_BINARY (int)
CURLE_FTP_COULDNT_STOR_FILE (int)
CURLE_FTP_COULDNT_USE_REST (int) Команда FTP-сервера REST вернула ошибку. Этого никогда не должно произойти, если сервер в порядке.
CURLE_FTP_PARTIAL_FILE (int)
CURLE_FTP_PORT_FAILED (int) Команда FTP-сервера PORT вернула ошибку. Чаще всего это происходит, когда не указали достаточно хороший адрес для модуля libcurl. Смотрите описание параметра CURLOPT_FTPPORT.
CURLE_FTP_QUOTE_ERROR (int)
CURLE_FTP_SSL_FAILED (int)
CURLE_FTP_USER_PASSWORD_INCORRECT (int)
CURLE_FTP_WEIRD_227_FORMAT (int) FTP-серверы возвращают строку ответа с кодом 227 на команду PASV. Если модуль libcurl не сможет проанализировать эту строку, этот код возврата передаётся обратно.
CURLE_FTP_WEIRD_PASS_REPLY (int) После отправки FTP-пароля на сервер модуль libcurl ожидает правильного ответа. Этот код ошибки указывает на то, что сервер вернул неожиданный код.
CURLE_FTP_WEIRD_PASV_REPLY (int) Модулю libcurl не удалось получить от сервера приемлемый результат в ответ на команду PASV или EPSV. Сервер неисправен.
CURLE_FTP_WEIRD_SERVER_REPLY (int) Сервер отправил данные, которые модуль libcurl не смог проанализировать. С cURL 7.51.0 этот код ошибки называется CURLE_WEIRD_SERVER_REPLY.
CURLE_FTP_WEIRD_USER_REPLY (int)
CURLE_FTP_WRITE_ERROR (int)
CURLE_FUNCTION_NOT_FOUND (int) Функция не найдена. Модуль не смог найти требуемую zlib-функцию.
CURLE_GOT_NOTHING (int) Сервер ничего не вернул, и в этих обстоятельствах отсутствие ответа считается ошибкой.
CURLE_HTTP_NOT_FOUND (int)
CURLE_HTTP_PORT_FAILED (int)
CURLE_HTTP_POST_ERROR (int) Это необычная ошибка, которая в основном возникает из-за внутренней неясности.
CURLE_HTTP_RANGE_ERROR (int)
CURLE_HTTP_RETURNED_ERROR (int) Ошибка возвращается, если для параметра CURLOPT_FAILONERROR установили значение true и HTTP-сервер возвращает код ошибки, который больше или равен 400.
CURLE_LDAP_CANNOT_BIND (int) LDAP-клиент не может привязаться. Операция LDAP-аутентификации не удалась.
CURLE_LDAP_INVALID_URL (int)
CURLE_LDAP_SEARCH_FAILED (int) LDAP-поиск не удался.
CURLE_LIBRARY_NOT_FOUND (int)
CURLE_MALFORMAT_USER (int)
CURLE_OBSOLETE (int)
CURLE_OK (int) Всё в порядке. Продолжайте как обычно.
CURLE_OPERATION_TIMEDOUT (int) Время ожидания операции истекло. Указанный период времени ожидания истёк в соответствии с условиями.
CURLE_OPERATION_TIMEOUTED (int)
CURLE_OUT_OF_MEMORY (int) Запрос на выделение памяти не выполнен.
CURLE_PARTIAL_FILE (int) Передача файла оказалась короче или длиннее, чем ожидалось. Ошибка возникает, когда сервер впервые сообщает ожидаемый размер передачи, а затем доставляет данные, которые не соответствуют ранее заданному размеру.
CURLE_PROXY (int) Ошибка подтверждения связи с прокси-сервером. Опция CURLINFO_PROXY_ERROR даёт дополнительную информацию о конкретной проблеме. Ошибка доступна с PHP 8.2.0 и cURL 7.73.0
CURLE_READ_ERROR (int) Возникла проблема с чтением локального файла или ошибка, которую вернула callback-функция чтения.
CURLE_RECV_ERROR (int) Сбой при получении сетевых данных.
CURLE_SEND_ERROR (int) Не удалось отправить сетевые данные.
CURLE_SHARE_IN_USE (int)
CURLE_SSH (int) Во время SSH-сеанса возникла неизвестная ошибка. Ошибка доступна с cURL 7.16.1.
CURLE_SSL_CACERT (int)
CURLE_SSL_CACERT_BADFILE (int) Проблема с чтением SSL-сертификата удостоверяющего CA-центра.
CURLE_SSL_CERTPROBLEM (int) Проблема с сертификатом локального клиента.
CURLE_SSL_CIPHER (int) Could not use specified cipher.
CURLE_SSL_CONNECT_ERROR (int) Проблема возникла на каком-то этапе подтверждения связи по протоколу SSL или TLS. Чтение сообщения в буфере ошибок даёт более подробную информацию о проблеме. Проблему вызывают сертификаты (форматы файлов, пути, разрешения), пароли и т. д.
CURLE_SSL_ENGINE_NOTFOUND (int) Модуль не смог найти криптомеханизм, который установили в параметрах дескриптора.
CURLE_SSL_ENGINE_SETFAILED (int) Модуль не смог установить выбранный SSL-механизм шифрования по умолчанию.
CURLE_SSL_PEER_CERTIFICATE (int)
CURLE_SSL_PINNEDPUBKEYNOTMATCH (int) Модуль не смог сопоставить закреплённый ключ, который указали через параметр CURLOPT_PINNEDPUBLICKEY.
CURLE_TELNET_OPTION_SYNTAX (int)
CURLE_TOO_MANY_REDIRECTS (int) Слишком много перенаправлений. При следовании по перенаправлениям модуль libcurl достигает максимального значения. Ограничение устанавливают через параметр CURLOPT_MAXREDIRS.
CURLE_UNKNOWN_TELNET_OPTION (int)
CURLE_UNSUPPORTED_PROTOCOL (int) URL-адрес, который передали модулю libcurl, использовал протокол, который libcurl не поддерживает. Проблема может заключаться в неиспользованной опции времени компиляции, в строке протокола, которую неправильно написали, или просто в протоколе, для которого в модуле libcurl нет кода.
CURLE_URL_MALFORMAT (int) URL-адрес отформатировали неправильно.
CURLE_URL_MALFORMAT_USER (int)
CURLE_WEIRD_SERVER_REPLY (int) Сервер отправил данные, которые модуль libcurl не смог проанализировать. До cURL 7.51.0 этот код ошибки назывался CURLE_FTP_WEIRD_SERVER_REPLY. Ошибка доступна с PHP 7.3.0 и cURL 7.51.0
CURLE_WRITE_ERROR (int) Ошибка возникла при записи полученных данных в локальный файл или ошибка вернулась в модуль libcurl из callback-функции записи.
curl_multi_* status constants
Константы Описание
CURLM_ADDED_ALREADY (int) Простой дескриптор, который уже добавили в множественный дескриптор, попытались добавить во второй раз. Константа доступна с cURL 7.32.1
CURLM_BAD_EASY_HANDLE (int) Простой дескриптор оказался недопустим. Это может означать, что это вообще не простой дескриптор или, возможно, дескриптор уже использовался в этом или другом мультидескрипторе.
CURLM_BAD_HANDLE (int) Переданный дескриптор оказался недопустимым мультидескриптором.
CURLM_CALL_MULTI_PERFORM (int) Начиная с cURL 7.20.0 эта константа не используется. До cURL 7.20.0 этот статус иногда возвращала функция curl_multi_exec(), если до возврата функцией любой другой константы вызывали функцию curl_multi_select() или похожую функцию.
CURLM_INTERNAL_ERROR (int) Внутренняя ошибка библиотеки libcurl.
CURLM_OK (int) Ошибки не возникали.
CURLM_OUT_OF_MEMORY (int) Закончилась память при обработке мультидескрипторов.
curl_pause()
Константы Описание
CURLPAUSE_ALL (int) Приостанавливает отправку и получение данных. Константа доступна с cURL 7.18.0.
CURLPAUSE_CONT (int) Возобновляет отправку и получение данных. Константа доступна с cURL 7.18.0.
CURLPAUSE_RECV (int) Приостанавливает получение данных. Константа доступна с cURL 7.18.0.
CURLPAUSE_RECV_CONT (int) Возобновляет получение данных. Константа доступна с cURL 7.18.0.
CURLPAUSE_SEND (int) Приостанавливает отправку данных. Константа доступна с cURL 7.18.0.
CURLPAUSE_SEND_CONT (int) Возобновляет отправку данных. Константа доступна с cURL 7.18.0.
add a note

User Contributed Notes 5 notes

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

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

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

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

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

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

or

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

to be removed once you stop supporting them.

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

On the official site:

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

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

Some examples:

in PHP the curl error number 28 is called

CURLE_OPERATION_TIMEOUTED

while in the official site is:

CURLE_OPERATION_TIMEDOUT

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

The same is for these:

CURLE_HTTP_RETURNED_ERROR
CURLE_UPLOAD_FAILED
CURLE_INTERFACE_FAILED
CURLE_SSL_CERTPROBLEM
CURLE_SEND_FAIL_REWIND
CURLE_LOGIN_DENIED
CURLE_AGAIN

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

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

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

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

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

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

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

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

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

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