mirror of
https://github.com/php/doc-ru.git
synced 2026-04-29 18:23:21 +02:00
2795 lines
153 KiB
XML
2795 lines
153 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
||
<!-- EN-Revision: 310963ad9ab1c2ca315361ff94314a21fa65f8b8 Maintainer: rjhdby Status: ready -->
|
||
<!-- Reviewed: no -->
|
||
<refentry xml:id="function.curl-setopt" xmlns="http://docbook.org/ns/docbook">
|
||
<refnamediv>
|
||
<refname>curl_setopt</refname>
|
||
<refpurpose>Устанавливает параметр для cURL-передачи</refpurpose>
|
||
</refnamediv>
|
||
<refsect1 role="description">
|
||
&reftitle.description;
|
||
<methodsynopsis>
|
||
<type>bool</type><methodname>curl_setopt</methodname>
|
||
<methodparam><type>CurlHandle</type><parameter>handle</parameter></methodparam>
|
||
<methodparam><type>int</type><parameter>option</parameter></methodparam>
|
||
<methodparam><type>mixed</type><parameter>value</parameter></methodparam>
|
||
</methodsynopsis>
|
||
<para>
|
||
Функция устанавливает параметр для дескриптора сеанса cURL.
|
||
</para>
|
||
</refsect1>
|
||
<refsect1 role="parameters">
|
||
&reftitle.parameters;
|
||
<para>
|
||
<variablelist>
|
||
&curl.ch.description;
|
||
<varlistentry>
|
||
<term><parameter>option</parameter></term>
|
||
<listitem>
|
||
<para>
|
||
Параметр <literal>CURLOPT_XXX</literal>, который нужно установить.
|
||
</para>
|
||
</listitem>
|
||
</varlistentry>
|
||
<varlistentry>
|
||
<term><parameter>value</parameter></term>
|
||
<listitem>
|
||
<para>
|
||
Значение для параметра <parameter>option</parameter>.
|
||
</para>
|
||
<para>
|
||
Значение параметра <parameter>value</parameter>
|
||
должно быть логическим (<type>bool</type>)
|
||
для следующих значений параметра <parameter>option</parameter>:
|
||
<informaltable>
|
||
<tgroup cols="3">
|
||
<thead>
|
||
<row>
|
||
<entry valign="top">Параметр</entry>
|
||
<entry valign="top">Устанавливаемое значение <parameter>value</parameter></entry>
|
||
<entry valign="top">Примечания</entry>
|
||
</row>
|
||
</thead>
|
||
<tbody>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_AUTOREFERER</constant></entry>
|
||
<entry valign="top">
|
||
&true; для автоматической установки поля <literal>Referer:</literal>
|
||
в запросах, перенаправленных заголовком <literal>Location:</literal>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_COOKIESESSION</constant></entry>
|
||
<entry valign="top">
|
||
&true; для указания текущему сеансу начать новую «сессию» cookies. Это заставит
|
||
модуль libcurl проигнорировать все «сессионные» cookies из предыдущего сеанса,
|
||
которые он собирается загрузить. По умолчанию модуль libcurl
|
||
сохраняет и загружает все cookies, независимо от того,
|
||
«сессионные» они или нет. «Сессионные» cookies — cookies без срока истечения,
|
||
которые должны существовать только для текущей «сессии».
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_CERTINFO</constant></entry>
|
||
<entry valign="top">
|
||
&true; для вывода информации о сертификате SSL в поток <constant>STDERR</constant>
|
||
при безопасных соединениях.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлена в cURL 7.19.1.
|
||
Для корректной работы требует
|
||
включённой опции <constant>CURLOPT_VERBOSE</constant>.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_CONNECT_ONLY</constant></entry>
|
||
<entry valign="top">
|
||
&true; сообщает библиотеке, чтобы она провела необходимые аутентификацию прокси
|
||
и настройку соединения, но не передавала данные. Эта опция реализована для
|
||
протоколов HTTP, SMTP и POP3.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлена в 7.15.2.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_CRLF</constant></entry>
|
||
<entry valign="top">
|
||
&true; для преобразования концов строк Unix в управляющие символы CRLF.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_DISALLOW_USERNAME_IN_URL</constant></entry>
|
||
<entry valign="top">
|
||
&true; для запрета URL-адресов, которые содержат имя пользователя.
|
||
Имена пользователей по умолчанию разрешены (0).
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.61.0. Доступно с PHP 7.3.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_DNS_SHUFFLE_ADDRESSES</constant></entry>
|
||
<entry valign="top">
|
||
&true; для перемешивания порядка всех возвращённых адресов так, чтобы они выбирались
|
||
в случайном порядке, когда имя разрешено и возвращено более одного IP-адреса.
|
||
Поэтому IPv4 может быть выбран до IPv6 или наоборот.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.60.0. Доступно с PHP 7.3.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_HAPROXYPROTOCOL</constant></entry>
|
||
<entry valign="top">
|
||
&true; для отправки заголовка протокола HAProxy PROXY v1 в начале соединения.
|
||
Действие по умолчанию — не отправлять заголовок.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.60.0. Доступно с PHP 7.3.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSH_COMPRESSION</constant></entry>
|
||
<entry valign="top">
|
||
&true; для включения встроенного сжатия SSH. Это запрос, а указание;
|
||
сервер может это и не выполнить.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.56.0. Доступно с PHP 7.3.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_DNS_USE_GLOBAL_CACHE</constant></entry>
|
||
<entry valign="top">
|
||
&true; для разрешения имён через глобальный кеш DNS. Этот параметр
|
||
не потокобезопасный. Он условно включён по умолчанию, если PHP собран
|
||
для потоконебезопасной работы (CLI, FCGI, Apache2-Prefork, и т. д.).
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_FAILONERROR</constant></entry>
|
||
<entry valign="top">
|
||
&true; для подробного отчёта при неудаче, если полученный HTTP-код
|
||
больше или равен 400. Поведение по умолчанию возвращает страницу
|
||
как обычно, игнорируя код.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSL_FALSESTART</constant></entry>
|
||
<entry valign="top">
|
||
&true; для разрешения ложного старта TLS.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено cURL 7.42.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_FILETIME</constant></entry>
|
||
<entry valign="top">
|
||
&true; для попытки получения даты модификации удалённого документа.
|
||
Дату получают, вызывая функцию <function>curl_getinfo</function>
|
||
с опцией <constant>CURLINFO_FILETIME</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_FOLLOWLOCATION</constant></entry>
|
||
<entry valign="top">
|
||
&true; для следования любому заголовку
|
||
<literal>«Location: »</literal>, отправленному сервером
|
||
в ответе.
|
||
Смотрите также <constant>CURLOPT_MAXREDIRS</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_FORBID_REUSE</constant></entry>
|
||
<entry valign="top">
|
||
&true;, чтобы соединение принудительно закрывалось,
|
||
когда обработка завершилась, и не попадало в пул
|
||
открытых соединений — было недоступно для повторной передачи.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_FRESH_CONNECT</constant></entry>
|
||
<entry valign="top">
|
||
&true; для принудительной установки нового соединения
|
||
вместо закешированного.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_FTP_USE_EPRT</constant></entry>
|
||
<entry valign="top">
|
||
&true; для отправки команд EPRT (и LPRT) при активных FTP-загрузках.
|
||
Указывают &false;, чтобы отключить команды EPRT и LPRT
|
||
и использовать только команду PORT.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_FTP_USE_EPSV</constant></entry>
|
||
<entry valign="top">
|
||
&true; для первоначальной пробы команды EPSV при FTP-передачах.
|
||
Если команда не удалась, будет произведён обратный
|
||
откат к PASV. Установите в &false; для отключения EPSV.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_FTP_CREATE_MISSING_DIRS</constant></entry>
|
||
<entry valign="top">
|
||
&true; для создания отсутствующих директорий, если FTP-операция
|
||
обнаруживает несуществующий путь.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_FTPAPPEND</constant></entry>
|
||
<entry valign="top">
|
||
&true; для записи в конец удалённого файла, вместо перезаписывания.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_TCP_NODELAY</constant></entry>
|
||
<entry valign="top">
|
||
&true; для отключения алгоритма Нейгла, который пытается
|
||
уменьшить количество мелких пакетов в сети.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступна для версий собранных с libcurl 7.11.2 или новее.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_FTPASCII</constant></entry>
|
||
<entry valign="top">
|
||
Псевдоним <constant>CURLOPT_TRANSFERTEXT</constant>.
|
||
Используйте его вместо этого.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_FTPLISTONLY</constant></entry>
|
||
<entry valign="top">
|
||
&true; для возврата только списка имён из FTP-директории.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_HEADER</constant></entry>
|
||
<entry valign="top">
|
||
&true; для включения заголовков в вывод.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry><constant>CURLINFO_HEADER_OUT</constant></entry>
|
||
<entry valign="top">
|
||
&true; для отслеживания строки запроса дескриптора.
|
||
</entry>
|
||
<entry valign="top">
|
||
Префикс <constant>CURLINFO_</constant>
|
||
использован преднамеренно.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_HTTP09_ALLOWED</constant></entry>
|
||
<entry valign="top">
|
||
Определяет, разрешить ли ответы HTTP/0.9. С версии модуля libcurl 7.66.0 значение по умолчанию — &false;;
|
||
ранее по умолчанию было логическое &true;.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступна с PHP 7.3.15 и 7.4.3, соответственно, если собрано с модулем libcurl >= 7.64.0
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_HTTPGET</constant></entry>
|
||
<entry valign="top">
|
||
&true; для сброса метода HTTP-запроса на метод GET.
|
||
Поскольку метод GET установлен по умолчанию, этот параметр необходим только
|
||
в случае, если метод запроса был ранее изменён.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_HTTPPROXYTUNNEL</constant></entry>
|
||
<entry valign="top">
|
||
&true; для туннелирования через указанный HTTP-прокси.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_HTTP_CONTENT_DECODING</constant></entry>
|
||
<entry valign="top">
|
||
&false; для получения необработанного тела HTTP-ответа.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно, если собран с libcurl >= 7.16.2.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_KEEP_SENDING_ON_ERROR</constant></entry>
|
||
<entry valign="top">
|
||
&true; для продолжения посылать тело запроса, если возвращаемый HTTP-код
|
||
равен или больше 300. Действие по умолчанию — остановить отправку
|
||
и закрыть поток или соединение. Подходит для ручной аутентификации NTLM.
|
||
Большинству приложений эта опция не нужна.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0, если собран с libcurl >= 7.51.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_MUTE</constant></entry>
|
||
<entry valign="top">
|
||
&true; для полного отключения сообщений функций cURL.
|
||
</entry>
|
||
<entry valign="top">
|
||
Удалена в cURL 7.15.5 (Можно использовать опцию CURLOPT_RETURNTRANSFER)
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_NETRC</constant></entry>
|
||
<entry valign="top">
|
||
&true; для считывания файла <filename>~/.netrc</filename>,
|
||
чтобы найти логин и пароль для удалённого сайта, с которым
|
||
устанавливается соединение.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_NOBODY</constant></entry>
|
||
<entry valign="top">
|
||
&true; для исключения тела ответа из вывода.
|
||
Метод запроса устанавливается в HEAD. Смена этого параметра в &false;
|
||
не меняет его обратно в GET.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_NOPROGRESS</constant></entry>
|
||
<entry valign="top"><para>
|
||
&true; для отмены индикатора прогресса при передачах cURL.
|
||
<note>
|
||
<para>
|
||
PHP автоматически устанавливает этот параметр в &true;, меняйте
|
||
его только для отладочных целей.
|
||
</para>
|
||
</note>
|
||
</para></entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_NOSIGNAL</constant></entry>
|
||
<entry valign="top">
|
||
&true; для игнорирования любой функции cURL, посылающей сигналы
|
||
PHP процессу. Этот параметр включён по умолчанию в многопоточных
|
||
SAPI для корректной работы параметров времени ожидания.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлен в cURL 7.10.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PATH_AS_IS</constant></entry>
|
||
<entry valign="top">
|
||
&true; для игнорирования последовательностей с двумя точками.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.42.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PIPEWAIT</constant></entry>
|
||
<entry valign="top">
|
||
&true; для ожидания конвейера/мультиплексирования.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.43.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_POST</constant></entry>
|
||
<entry valign="top">
|
||
&true; для отправки запроса обычным HTTP-методом POST. Метод POST
|
||
использует обычный тип тела запроса <literal>application/x-www-form-urlencoded</literal>,
|
||
который большей частью встречается при отправке HTML-форм.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PUT</constant></entry>
|
||
<entry valign="top">
|
||
&true; для загрузки файла HTTP-методом PUT. Загружаемый файл должен быть
|
||
задан с помощью параметров <constant>CURLOPT_INFILE</constant>
|
||
и <constant>CURLOPT_INFILESIZE</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_RETURNTRANSFER</constant></entry>
|
||
<entry valign="top">
|
||
&true; для возврата результата передачи в качестве строки из
|
||
<function>curl_exec</function> вместо прямого вывода в браузер.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SASL_IR</constant></entry>
|
||
<entry valign="top">
|
||
&true; для разрешения отправки инициирующего ответа в первом пакете.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.31.10. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSL_ENABLE_ALPN</constant></entry>
|
||
<entry valign="top">
|
||
&false; для отключения ALPN в SSL-рукопожатии (если на бэкенде SSL-модуль
|
||
libcurl собран с её поддержкой), это можно использовать при соединении http2.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.36.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSL_ENABLE_NPN</constant></entry>
|
||
<entry valign="top">
|
||
&false; для отключения ALPN в SSL-рукопожатии (если на бэкенде SSL
|
||
libcurl собран с её поддержкой), это можно использовать при соединении http2.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.36.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSL_VERIFYPEER</constant></entry>
|
||
<entry valign="top">
|
||
&false; для остановки cURL от проверки сертификата узла сети.
|
||
Альтернативные сертификаты для проверки могут быть указаны
|
||
в параметре <constant>CURLOPT_CAINFO</constant> или директории с
|
||
сертификатами, указываемой параметром <constant>CURLOPT_CAPATH</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
Начиная с версии cURL 7.10 значение по умолчанию равно &true;.
|
||
Дистрибутив по умолчанию устанавливается с версией cURL 7.10.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSL_VERIFYSTATUS</constant></entry>
|
||
<entry valign="top">
|
||
&true; для проверки статуса сертификата.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.41.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_SSL_VERIFYPEER</constant></entry>
|
||
<entry valign="top">
|
||
&false; для остановки cURL от проверки сертификата пира.
|
||
Альтернативные сертификаты для проверки могут быть
|
||
указаны с помощью параметра <constant>CURLOPT_CAINFO</constant>,
|
||
а каталог сертификатов может быть указан с помощью
|
||
параметра <constant>CURLOPT_CAPATH</constant>.
|
||
Если установлено значение false, проверка сертификата однорангового узла завершается успешно несмотря ни на что.
|
||
</entry>
|
||
<entry valign="top">
|
||
&true; по умолчанию. Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SAFE_UPLOAD</constant></entry>
|
||
<entry valign="top">
|
||
Всегда &true;, это отключает поддержку префикса <literal>@</literal> для загрузки файлов
|
||
в <constant>CURLOPT_POSTFIELDS</constant> и означает, что значения,
|
||
начинающиеся с <literal>@</literal>, могут быть безопасно переданы в качестве полей.
|
||
Вместо этого для загрузки файлов можно использовать объект <classname>CURLFile</classname>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SUPPRESS_CONNECT_HEADERS</constant></entry>
|
||
<entry valign="top">
|
||
&true; для подавления заголовков ответов прокси-сервера CONNECT из пользовательских callback-функции
|
||
<constant>CURLOPT_HEADERFUNCTION</constant> и <constant>CURLOPT_WRITEFUNCTION</constant>,
|
||
когда установлена опция <constant>CURLOPT_HTTPPROXYTUNNEL</constant> и выполняется запрос CONNECT.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.54.0. Доступно с PHP 7.3.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_TCP_FASTOPEN</constant></entry>
|
||
<entry valign="top">
|
||
&true; для разрешения TCP Fast Open.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.49.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_TFTP_NO_OPTIONS</constant></entry>
|
||
<entry valign="top">
|
||
&true; для запрета отправки запросов TFTP-опций.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.48.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_TRANSFERTEXT</constant></entry>
|
||
<entry valign="top">
|
||
&true; для установки ASCII-режима при FTP-передачах. При передаче данных по протоколу LDAP
|
||
данные возвращаются простым текстом вместо HTML. В системах Windows
|
||
это не установит поток <constant>STDOUT</constant> в бинарный режим.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_UNRESTRICTED_AUTH</constant></entry>
|
||
<entry valign="top">
|
||
&true; для продолжения отправки логина и пароля при перенаправлениях
|
||
(используя <constant>CURLOPT_FOLLOWLOCATION</constant>),
|
||
даже при изменении имени хоста.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_UPLOAD</constant></entry>
|
||
<entry valign="top">
|
||
&true; для подготовки к загрузке файла на сервер.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_VERBOSE</constant></entry>
|
||
<entry valign="top">
|
||
&true; для вывода дополнительной информации. Записывает вывод в
|
||
поток <constant>STDERR</constant>, или файл, указанный параметром
|
||
<constant>CURLOPT_STDERR</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</informaltable>
|
||
</para>
|
||
<para>
|
||
Для следующих значений параметра <parameter>option</parameter>,
|
||
параметр <parameter>value</parameter> должен быть типа
|
||
<type>int</type>:
|
||
<informaltable>
|
||
<tgroup cols="3">
|
||
<thead>
|
||
<row>
|
||
<entry>Параметр</entry>
|
||
<entry>Устанавливаемое значение <parameter>value</parameter></entry>
|
||
<entry>Замечания</entry>
|
||
</row>
|
||
</thead>
|
||
<tbody>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_BUFFERSIZE</constant></entry>
|
||
<entry valign="top">
|
||
Размер буфера (в байтах), который будет выделяться при каждом чтении. Однако нет
|
||
гарантии, что запрос на получение такого размера будет исполнен.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлен в версии cURL 7.10.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry><constant>CURLOPT_CONNECTTIMEOUT</constant></entry>
|
||
<entry valign="top">
|
||
Количество секунд ожидания, отведённых на попытку соединения. Установка
|
||
значения 0 приведёт к неограниченному ожиданию.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_CONNECTTIMEOUT_MS</constant></entry>
|
||
<entry valign="top">
|
||
Количество миллисекунд ожидания, отведённых на попытку соединения. Установка
|
||
значения 0 приведёт к неограниченному ожиданию.
|
||
<!-- http://curl.haxx.se/libcurl/c/curl_easy_setopt.html -->
|
||
Если библиотека libcurl скомпилирована со стандартным системным
|
||
преобразователем имён, то эта часть соединения по-прежнему будет использовать
|
||
полносекундное разрешение интервалов с минимальным допустимым
|
||
временем ожидания в 1 секунду.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлен в версии cURL 7.16.2.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_DNS_CACHE_TIMEOUT</constant></entry>
|
||
<entry valign="top">
|
||
Количество секунд, в течение которых в памяти хранятся DNS-записи.
|
||
По умолчанию этот параметр равен 120 (2 минуты).
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_EXPECT_100_TIMEOUT_MS</constant></entry>
|
||
<entry valign="top">
|
||
Время ожидания ответов с заголовком <literal>Expect: 100-continue</literal> в миллисекундах.
|
||
По умолчанию — 1000 миллисекунд.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.36.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS</constant></entry>
|
||
<entry valign="top">
|
||
Преимущество протокола ipv6 для алгоритма Happy Eyeballs. Алгоритм Happy Eyeballs пытается
|
||
подключиться как к адресам IPv4, так и к адресам IPv6 для хостов с двойным стеком,
|
||
отдавая преимущество сначала IPv6 на время ожидания в миллисекундах.
|
||
Значение по умолчанию — CURL_HET_DEFAULT, которое составляет 200 миллисекунд.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.59.0. Доступно с PHP 7.3.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_FTPSSLAUTH</constant></entry>
|
||
<entry valign="top">
|
||
Метод FTP-аутентификации (в активном режиме):
|
||
<constant>CURLFTPAUTH_SSL</constant> (сначала проверяется SSL),
|
||
<constant>CURLFTPAUTH_TLS</constant> (сначала проверяется TLS) или
|
||
<constant>CURLFTPAUTH_DEFAULT</constant> (cURL решает сама).
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлен в cURL 7.12.2.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_HEADEROPT</constant></entry>
|
||
<entry valign="top">
|
||
<para>
|
||
Что делать с заголовками. Одна из следующих опций:
|
||
<variablelist>
|
||
<varlistentry>
|
||
<term>CURLHEADER_UNIFIED</term>
|
||
<listitem>
|
||
<simpara>
|
||
Заголовки, указанные в
|
||
опции <constant>CURLOPT_HTTPHEADER</constant> будут использованы в запросах
|
||
к серверам и прокси. Если разрешена эта опция,
|
||
опция <constant>CURLOPT_PROXYHEADER</constant> не будет иметь эффекта.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
<varlistentry>
|
||
<term>CURLHEADER_SEPARATE</term>
|
||
<listitem>
|
||
<simpara>
|
||
Заголовки
|
||
<constant>CURLOPT_HTTPHEADER</constant> будут отсылаться только
|
||
на сервер, но не на прокси. На прокси заголовки должны посылаться
|
||
<constant>CURLOPT_PROXYHEADER</constant>. Обратите внимание, что
|
||
если запросы типа non-CONNECT будут слаться на прокси, то модуль libcurl будет
|
||
посылать как серверные, так и прокси заголовки. Если же происходит
|
||
CONNECT, libcurl пошлёт на прокси только заголовки <constant>CURLOPT_PROXYHEADER</constant>,
|
||
а потом заголовки <constant>CURLOPT_HTTPHEADER</constant> только на сервер.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
</variablelist>
|
||
</para>
|
||
<simpara>
|
||
По умолчанию <constant>CURLHEADER_SEPARATE</constant>, начиная с cURL
|
||
7.42.1, и <constant>CURLHEADER_UNIFIED</constant> до него.
|
||
</simpara>
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.37.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_HTTP_VERSION</constant></entry>
|
||
<entry valign="top">
|
||
<constant>CURL_HTTP_VERSION_NONE</constant> (значение по умолчанию; CURL сам решает, какую версию использовать),
|
||
<constant>CURL_HTTP_VERSION_1_0</constant> (принудительно соединяться по протоколу HTTP/1.0),
|
||
<constant>CURL_HTTP_VERSION_1_1</constant> (принудительно соединяться по протоколу HTTP/1.1),
|
||
<constant>CURL_HTTP_VERSION_2_0</constant> (попытаться соединиться по протоколу HTTP/2.0),
|
||
<constant>CURL_HTTP_VERSION_2</constant> (псевдоним <constant>CURL_HTTP_VERSION_2_0</constant>),
|
||
<constant>CURL_HTTP_VERSION_2TLS</constant> (попытаться соединиться только по протоколу HTTP/2.0 через TLS (HTTPS))
|
||
или <constant>CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE</constant> (выполнять HTTP-запросы без TLS по протоколу HTTP/2.0 без возврата к HTTP/1.1).
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_HTTPAUTH</constant></entry>
|
||
<entry valign="top">
|
||
<para>
|
||
Методы HTTP-аутентификации. Параметры:
|
||
<constant>CURLAUTH_BASIC</constant>,
|
||
<constant>CURLAUTH_DIGEST</constant>,
|
||
<constant>CURLAUTH_GSSNEGOTIATE</constant>,
|
||
<constant>CURLAUTH_NTLM</constant>,
|
||
<constant>CURLAUTH_AWS_SIGV4</constant>,
|
||
<constant>CURLAUTH_ANY</constant>
|
||
и <constant>CURLAUTH_ANYSAFE</constant>.
|
||
</para>
|
||
<para>
|
||
Можно использовать побитовый оператор <literal>|</literal> (или) для комбинации
|
||
нескольких методов вместе. В этом случае cURL опросит сервер на предмет
|
||
поддерживаемых методов авторизации и выберет лучший из них.
|
||
</para>
|
||
<para>
|
||
<constant>CURLAUTH_ANY</constant> устанавливает все биты. cURL автоматически выберет
|
||
тот, который посчитает самым безопасным.
|
||
</para>
|
||
<para>
|
||
<constant>CURLAUTH_ANYSAFE</constant> устанавливает все биты кроме <constant>CURLAUTH_BASIC</constant>.
|
||
cURL автоматически выберет тот, который посчитает самым безопасным.
|
||
</para>
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_INFILESIZE</constant></entry>
|
||
<entry valign="top">
|
||
Ожидаемый размер файла в байтах при загрузке файла на удалённый сервер.
|
||
Учтите, что использование этой опции не остановит дальнейшую посылку данных,
|
||
превышающих это значение, так как посылаемые данные зависят от результата
|
||
<constant>CURLOPT_READFUNCTION</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_LOW_SPEED_LIMIT</constant></entry>
|
||
<entry valign="top">
|
||
Верхний порог скорости передачи данных, в байтах в секунду. Проверка происходит
|
||
в течение <constant>CURLOPT_LOW_SPEED_TIME</constant> секунд, после чего
|
||
PHP считает передачу слишком медленной и прерывает её.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_LOW_SPEED_TIME</constant></entry>
|
||
<entry valign="top">
|
||
Максимальное количество секунд, в течение которых скорость передачи
|
||
не должна превышать значение опции <constant>CURLOPT_LOW_SPEED_LIMIT</constant>, иначе
|
||
PHP пометит передачу как слишком медленную и прекратит её.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_MAIL_RCPT_ALLLOWFAILS</constant></entry>
|
||
<entry valign="top">
|
||
Разрешить ошибки для команды RCPT TO для некоторых получателей.
|
||
</entry>
|
||
<entry valign="top">
|
||
При отправке данных нескольким получателям cURL прерывает SMTP-диалог, если хотя бы
|
||
для одного из получателей на команду RCPT TO была получена ошибка. Этот параметр сообщает cURL,
|
||
чтобы он игнорировал ошибки и продолжал с оставшимися доступными получателями.
|
||
Если все получатели вызвали ошибку команды RCPT TO и этот флаг установлен,
|
||
cURL прервёт SMTP-диалог и вернёт ошибку, полученную от последней команды RCPT TO.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_MAXAGE_CONN</constant></entry>
|
||
<entry valign="top">
|
||
Максимальное время ожидания, в течение которого разрешено повторно
|
||
использовать существующее соединение.
|
||
По умолчанию максимальный срок установлен на <literal>118</literal> секунд.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_MAXFILESIZE_LARGE</constant></entry>
|
||
<entry valign="top">
|
||
Максимальный разрешённый размер файла в байтах для скачивания. Если размер запрошенного файла
|
||
окажется больше этого значения,
|
||
передача не начнётся и вернётся значение константы <constant>CURLE_FILESIZE_EXCEEDED</constant>.
|
||
Размер файла не всегда известен до начала скачивания, и на скачивание таких таких файлов
|
||
этот параметр не повлияет, даже если
|
||
в итоге размер файла превышает установленный предел.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_MAXLIFETIME_CONN</constant></entry>
|
||
<entry valign="top">
|
||
Максимальное время в секундах с момента установления соединения, в течение которого
|
||
разрешено рассматривать существующее соединение для повторной передачи.
|
||
Если соединение будет найдено в кеше, который старше этого значения,
|
||
оно не будет рассмотрено для повторной передачи и будет закрыто
|
||
как только все незавершенные передачи будут завершены.
|
||
По умолчанию — 0 секунд, что означает, что параметр выключен и все соединения
|
||
доступны для повторной передачи.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_MAXCONNECTS</constant></entry>
|
||
<entry valign="top">
|
||
Максимальное количество постоянных соединений.
|
||
При достижении лимита, самое старое соединение в кеше закрывается,
|
||
чтобы предотвратить увеличение числа открытых соединений.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_MAXREDIRS</constant></entry>
|
||
<entry valign="top">
|
||
Максимальное количество принимаемых перенаправлений. Используйте этот параметр
|
||
вместе с параметром <constant>CURLOPT_FOLLOWLOCATION</constant>.
|
||
Значение по умолчанию <literal>20</literal> установлено для предотвращения бесконечных перенаправлений.
|
||
Значение <literal>-1</literal> разрешает бесконечные перенаправления, а <literal>0</literal>
|
||
отклоняет все перенаправления.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PORT</constant></entry>
|
||
<entry valign="top">
|
||
Альтернативный порт соединения.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_POSTREDIR</constant></entry>
|
||
<entry valign="top">
|
||
Битовая маска, содержащая 1 (301 Moved Permanently), 2 (302 Found)
|
||
и 4 (303 See Other), чтобы задавать должен ли метод HTTP POST обрабатываться при
|
||
включённой опции <constant>CURLOPT_FOLLOWLOCATION</constant>, если
|
||
произошёл указанный тип перенаправления.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.19.1.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROTOCOLS</constant></entry>
|
||
<entry valign="top">
|
||
<para>
|
||
Битовая маска из значений <constant>CURLPROTO_*</constant>. Эта маска
|
||
установит ограничение на то, какие протоколы библиотека libcurl сможет использовать при передаче.
|
||
Это разрешает настроить библиотеку libcurl
|
||
на работу с широким диапазоном протоколов, но по-прежнему ограничить работу
|
||
отдельных передач, чтобы было разрешено использовать только часть из них.
|
||
По умолчанию модуль libcurl будет принимать все поддерживаемые протоколы.
|
||
Смотрите также параметр <constant>CURLOPT_REDIR_PROTOCOLS</constant>.
|
||
</para>
|
||
<para>
|
||
Корректные значения протоколов:
|
||
<constant>CURLPROTO_HTTP</constant>,
|
||
<constant>CURLPROTO_HTTPS</constant>,
|
||
<constant>CURLPROTO_FTP</constant>,
|
||
<constant>CURLPROTO_FTPS</constant>,
|
||
<constant>CURLPROTO_SCP</constant>,
|
||
<constant>CURLPROTO_SFTP</constant>,
|
||
<constant>CURLPROTO_TELNET</constant>,
|
||
<constant>CURLPROTO_LDAP</constant>,
|
||
<constant>CURLPROTO_LDAPS</constant>,
|
||
<constant>CURLPROTO_DICT</constant>,
|
||
<constant>CURLPROTO_FILE</constant>,
|
||
<constant>CURLPROTO_TFTP</constant>,
|
||
<constant>CURLPROTO_MQTT</constant>,
|
||
<constant>CURLPROTO_ALL</constant>
|
||
</para>
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлен в cURL 7.19.4.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXYAUTH</constant></entry>
|
||
<entry valign="top">
|
||
Методы авторизации HTTP, которые будут использованы при соединении с прокси-сервером.
|
||
Для этой опции устанавливают те же самые битовые маски, которые были описаны в параметре
|
||
<constant>CURLOPT_HTTPAUTH</constant>. Для авторизации прокси
|
||
поддерживаются только значения <constant>CURLAUTH_BASIC</constant>
|
||
и <constant>CURLAUTH_NTLM</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлен в версии cURL 7.10.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXYPORT</constant></entry>
|
||
<entry valign="top">
|
||
Номер порта прокси-сервера, к которому осуществляется
|
||
соединение. Этот номер также может быть установлен
|
||
с помощью параметра <constant>CURLOPT_PROXY</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXYTYPE</constant></entry>
|
||
<entry valign="top">
|
||
Либо <constant>CURLPROXY_HTTP</constant> (по умолчанию), либо
|
||
<constant>CURLPROXY_SOCKS4</constant>,
|
||
<constant>CURLPROXY_SOCKS5</constant>,
|
||
<constant>CURLPROXY_SOCKS4A</constant> или
|
||
<constant>CURLPROXY_SOCKS5_HOSTNAME</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлен в версии cURL 7.10.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_REDIR_PROTOCOLS</constant></entry>
|
||
<entry valign="top">
|
||
Битовая маска из значений <constant>CURLPROTO_*</constant>.
|
||
Эта битовая маска ограничивает протоколы,
|
||
которые библиотека libcurl будет использовать при перенаправлении (при включённом параметре
|
||
<constant>CURLOPT_FOLLOWLOCATION</constant>).
|
||
Этим можно ограничить набор протоколов при перенаправлениях для
|
||
отдельных передач. По умолчанию libcurl поддерживает все протоколы, кроме
|
||
FILE и SCP. В версиях до 7.19.4 перенаправление
|
||
использовалось для всех протоколов без исключения.
|
||
Смотрите также описание параметра <constant>CURLOPT_PROTOCOLS</constant>
|
||
для списка констант со значениями протоколов.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлен в версии cURL 7.19.4.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_RESUME_FROM</constant></entry>
|
||
<entry valign="top">
|
||
Смещение в байтах для возобновления передачи.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SOCKS5_AUTH</constant></entry>
|
||
<entry valign="top">
|
||
<para>
|
||
Метод аутентификации SOCKS5, который нужно использовать. Варианты:
|
||
<constant>CURLAUTH_BASIC</constant>,
|
||
<constant>CURLAUTH_GSSAPI</constant>,
|
||
<constant>CURLAUTH_NONE</constant>.
|
||
</para>
|
||
<para>
|
||
Побитовый оператор <literal>|</literal> (или) можно использовать для объединения
|
||
нескольких методов. Если это будет сделано, cURL будет опрашивать сервер, чтобы выяснить,
|
||
какие методы он поддерживает, и выбрать наилучший.
|
||
</para>
|
||
<para>
|
||
<constant>CURLAUTH_BASIC</constant> разрешает аутентификацию по constant пользователя/пароля.
|
||
</para>
|
||
<para>
|
||
<constant>CURLAUTH_GSSAPI</constant> разрешает аутентификацию GSS-API.
|
||
</para>
|
||
<para>
|
||
<constant>CURLAUTH_NONE</constant> не разрешает аутентификацию.
|
||
</para>
|
||
<para>
|
||
По умолчанию <literal>CURLAUTH_BASIC|CURLAUTH_GSSAPI</literal>.
|
||
Установите действительное имя пользователя и пароль с помощью параметра <constant>CURLOPT_PROXYUSERPWD</constant>.
|
||
</para>
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с 7.3.0 и curl >= 7.55.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSL_OPTIONS</constant></entry>
|
||
<entry valign="top">
|
||
<para>
|
||
Устанавливает опции поведения SSL. Битовая маска из следующих констант:
|
||
<variablelist>
|
||
<varlistentry>
|
||
<term>CURLSSLOPT_ALLOW_BEAST</term>
|
||
<listitem>
|
||
<simpara>
|
||
Не пытаться найти обходной
|
||
путь для изъяна в безопасности протоколов SSL3 и TLS1.0.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
<varlistentry>
|
||
<term>CURLSSLOPT_NO_REVOKE</term>
|
||
<listitem>
|
||
<simpara>
|
||
Отключить проверку
|
||
на предмет того, отозван ли сертификат, для тех SSL-бэкендов,
|
||
где такое поведение присутствует.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
<varlistentry>
|
||
<term>CURLSSLOPT_AUTO_CLIENT_CERT</term>
|
||
<listitem>
|
||
<simpara>
|
||
Автоматически
|
||
находить и использовать сертификат клиента для аутентификации
|
||
по запросу сервера.
|
||
Эта опция поддерживается только
|
||
модулем поставщика служб безопасности Schannel (собственный SSL-модуль Windows).
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
<varlistentry>
|
||
<term>CURLSSLOPT_NATIVE_CA</term>
|
||
<listitem>
|
||
<simpara>
|
||
Использовать собственное
|
||
хранилище доверенных центров сертификации (Certificate authority, CA)
|
||
операционной системы для проверки сертификата.
|
||
Работает только в Windows с установленной сборкой библиотеки OpenSSL.
|
||
</simpara>
|
||
<note>
|
||
<simpara>
|
||
Это экспериментальная опция и её поведение может измениться в будущем.
|
||
</simpara>
|
||
</note>
|
||
</listitem>
|
||
</varlistentry>
|
||
<varlistentry>
|
||
<term>CURLSSLOPT_NO_PARTIALCHAIN</term>
|
||
<listitem>
|
||
<simpara>
|
||
Не принимать цепочки
|
||
«частных» сертификатов, что cURL в других случаях делает по умолчанию.
|
||
Эта опция поддерживается только для библиотеки OpenSSL
|
||
и приведёт к ошибке проверки сертификата, если цепочка заканчивается
|
||
на промежуточном, а не на корневом сертификате.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
<varlistentry>
|
||
<term>CURLSSLOPT_REVOKE_BEST_EFFORT</term>
|
||
<listitem>
|
||
<simpara>
|
||
Игнорировать проверку на предмет того,
|
||
отозван ли сертификат, в случае отсутствия или отключения точек распространения для тех SSL-бэкендов,
|
||
где такое поведение присутствует.
|
||
Эта опция поддерживается только модулем поставщика служб безопасности Schannel (собственный SSL-модуль Windows).
|
||
</simpara>
|
||
<note>
|
||
<simpara>
|
||
Если указана вместе с опцией <constant>CURLSSLOPT_NO_REVOKE</constant>,
|
||
последняя будет в приоритете.
|
||
</simpara>
|
||
</note>
|
||
</listitem>
|
||
</varlistentry>
|
||
</variablelist>
|
||
</para>
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.25.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSL_VERIFYHOST</constant></entry>
|
||
<entry valign="top">
|
||
Указывают значение <literal>2</literal>, чтобы убедиться, что поле общего имени
|
||
или поле альтернативного имени субъекта в сертификате узла SSL соответствует указанному имени хоста.
|
||
Значение <literal>0</literal> указывают, чтобы не проверять имена.
|
||
Значение <literal>1</literal> не следует использовать.
|
||
В боевом окружении значение этого параметра должно
|
||
быть <literal>2</literal> (установлено по умолчанию).
|
||
</entry>
|
||
<entry valign="top">
|
||
Поддержка значения <literal>1</literal> убрана в cURL 7.28.1
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSLVERSION</constant></entry>
|
||
<entry valign="top">
|
||
<para>
|
||
Одна из констант
|
||
<simplelist type="inline">
|
||
<member><constant>CURL_SSLVERSION_DEFAULT</constant></member>
|
||
<member><constant>CURL_SSLVERSION_TLSv1</constant></member>
|
||
<member><constant>CURL_SSLVERSION_SSLv2</constant></member>
|
||
<member><constant>CURL_SSLVERSION_SSLv3</constant></member>
|
||
<member><constant>CURL_SSLVERSION_TLSv1_0</constant></member>
|
||
<member><constant>CURL_SSLVERSION_TLSv1_1</constant></member>
|
||
<member><constant>CURL_SSLVERSION_TLSv1_2</constant></member>
|
||
<member><constant>CURL_SSLVERSION_TLSv1_3</constant></member>
|
||
</simplelist>
|
||
.
|
||
</para>
|
||
<simpara>
|
||
Максимальная версия TLS может быть установлена с помощью
|
||
одной из констант <constant>CURL_SSLVERSION_MAX_*</constant>.
|
||
</simpara>
|
||
<para>
|
||
Также допускается побитовое ИЛИ одной из констант
|
||
<constant>CURL_SSLVERSION_*</constant>
|
||
с одной из констант
|
||
<constant>CURL_SSLVERSION_MAX_*</constant>.
|
||
|
||
<simplelist type="inline">
|
||
<member><constant>CURL_SSLVERSION_MAX_DEFAULT</constant> (the maximum version supported by the library)</member>
|
||
<member><constant>CURL_SSLVERSION_MAX_TLSv1_0</constant></member>
|
||
<member><constant>CURL_SSLVERSION_MAX_TLSv1_1</constant></member>
|
||
<member><constant>CURL_SSLVERSION_MAX_TLSv1_2</constant></member>
|
||
<member><constant>CURL_SSLVERSION_MAX_TLSv1_3</constant></member>
|
||
</simplelist>
|
||
.
|
||
</para>
|
||
<warning>
|
||
<simpara>
|
||
Лучше не устанавливать эту опцию и оставить значения по умолчанию,
|
||
поскольку установка этого параметра в
|
||
<constant>CURL_SSLVERSION_SSLv2</constant>
|
||
или
|
||
<constant>CURL_SSLVERSION_SSLv3</constant>
|
||
опасна,
|
||
учитывая известные уязвимости в протоколах SSLv2 и SSLv3.
|
||
</simpara>
|
||
</warning>
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_SSL_OPTIONS</constant></entry>
|
||
<entry valign="top">
|
||
<para>
|
||
Задайте параметры поведения SSL-прокси, которые являются битовой маской любой из следующих констант:
|
||
<variablelist>
|
||
<varlistentry>
|
||
<term>CURLSSLOPT_ALLOW_BEAST</term>
|
||
<listitem>
|
||
<simpara>
|
||
Не пытаться использовать
|
||
обходные пути для устранения уязвимости в протоколах SSL3 и TLS1.0.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
<varlistentry>
|
||
<term>CURLSSLOPT_NO_REVOKE</term>
|
||
<listitem>
|
||
<simpara>
|
||
Отключить проверку
|
||
на предмет того, отозван ли сертификат, для тех бэкендов SSL,
|
||
где такое поведение присутствует. (curl >= 7.44.0)
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
<varlistentry>
|
||
<term>CURLSSLOPT_NO_PARTIALCHAIN</term>
|
||
<listitem>
|
||
<simpara>
|
||
Не принимать «частичные»
|
||
цепочки сертификатов, что в противном случае делается по умолчанию. (curl >= 7.68.0)
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
</variablelist>
|
||
</para>
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_SSL_VERIFYHOST</constant></entry>
|
||
<entry valign="top">
|
||
Значение <literal>2</literal> устанавливают для проверки в полях
|
||
имени сертификата прокси-сервера HTTPS по отношению к имени прокси-сервера.
|
||
Когда установлено значение <literal>0</literal>, соединение успешно выполняется
|
||
независимо от имён, указанных в сертификате.
|
||
Используйте эту способность с осторожностью!
|
||
<literal>1</literal> рассматривается как опция отладки в curl 7.28.0 и более ранних версиях.
|
||
С версии curl 7.28.1 до 7.65.3 возвращено значение <constant>CURLE_BAD_FUNCTION_ARGUMENT</constant>.
|
||
Начиная с curl 7.66.0 и далее значения <literal>1</literal> и <literal>2</literal> обрабатываются как одно и то же значение.
|
||
В производственной среде значение этой опции должно быть <literal>2</literal> (значение по умолчанию).
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_SSLVERSION</constant></entry>
|
||
<entry valign="top">
|
||
<para>
|
||
Одна из констант
|
||
<simplelist type="inline">
|
||
<member><constant>CURL_SSLVERSION_DEFAULT</constant></member>
|
||
<member><constant>CURL_SSLVERSION_TLSv1</constant></member>
|
||
<member><constant>CURL_SSLVERSION_TLSv1_0</constant></member>
|
||
<member><constant>CURL_SSLVERSION_TLSv1_1</constant></member>
|
||
<member><constant>CURL_SSLVERSION_TLSv1_2</constant></member>
|
||
<member><constant>CURL_SSLVERSION_TLSv1_3</constant></member>
|
||
<member><constant>CURL_SSLVERSION_MAX_DEFAULT</constant></member>
|
||
<member><constant>CURL_SSLVERSION_MAX_TLSv1_0</constant></member>
|
||
<member><constant>CURL_SSLVERSION_MAX_TLSv1_1</constant></member>
|
||
<member><constant>CURL_SSLVERSION_MAX_TLSv1_2</constant></member>
|
||
<member><constant>CURL_SSLVERSION_MAX_TLSv1_3</constant></member>
|
||
<member><constant>CURL_SSLVERSION_SSLv3</constant></member>
|
||
</simplelist>
|
||
.
|
||
</para>
|
||
<warning>
|
||
<simpara>
|
||
Лучше всего не устанавливать это и разрешать использовать значение по умолчанию
|
||
<constant>CURL_SSLVERSION_DEFAULT</constant>,
|
||
которое попытается выяснить версию протокола удалённого SSL.
|
||
</simpara>
|
||
</warning>
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_STREAM_WEIGHT</constant></entry>
|
||
<entry valign="top">
|
||
Установить вес цифрового потока (число между 1 и 256).
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.46.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_TCP_KEEPALIVE</constant></entry>
|
||
<entry valign="top">
|
||
Если установлено значение <literal>1</literal>, будут отправлены пробные сообщения поддержки активности TCP. Задержку и
|
||
частоту этих проб можно контролировать с помощью параметров <constant>CURLOPT_TCP_KEEPIDLE</constant> и
|
||
<constant>CURLOPT_TCP_KEEPINTVL</constant>, если операционная система их
|
||
поддерживает. Если установлено значение <literal>0</literal> (по умолчанию), пробные сообщения проверки активности отключены.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.25.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_TCP_KEEPIDLE</constant></entry>
|
||
<entry valign="top">
|
||
Устанавливает задержку в секундах, в течение которой операционная система будет ждать, пока соединение находится в режиме ожидания,
|
||
перед отправкой проб проверки активности,
|
||
если включено <constant>CURLOPT_TCP_KEEPALIVE</constant>. Не все операционные системы поддерживают эту опцию.
|
||
По умолчанию установлено значение <literal>60</literal>.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.25.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_TCP_KEEPINTVL</constant></entry>
|
||
<entry valign="top">
|
||
Устанавливает интервал в секундах, в течение которого операционная система будет ожидать между
|
||
отправкой проб проверки активности, если включено <constant>CURLOPT_TCP_KEEPALIVE</constant>.
|
||
Не все операционные системы поддерживают эту опцию.
|
||
По умолчанию установлено значение <literal>60</literal>.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.25.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_TIMECONDITION</constant></entry>
|
||
<entry valign="top">
|
||
Способ трактовки параметра <constant>CURLOPT_TIMEVALUE</constant>.
|
||
Значение <constant>CURL_TIMECOND_IFMODSINCE</constant> указывают для
|
||
возвращения страницы, только если она была изменена со времени,
|
||
указанного в параметре <constant>CURLOPT_TIMEVALUE</constant>.
|
||
Если страница не была изменена, вернётся заголовок
|
||
<literal>"304 Not Modified"</literal>, подразумевая, что
|
||
параметр <constant>CURLOPT_HEADER</constant> установлен в &true;.
|
||
Значение <constant>CURL_TIMECOND_IFUNMODSINCE</constant> указывают для обратного эффекта.
|
||
Значение <constant>CURL_TIMECOND_NONE</constant> — чтобы игнорировать
|
||
опцию <constant>CURLOPT_TIMEVALUE</constant> и всегда возвращать страницу.
|
||
По умолчанию установлено значение <constant>CURL_TIMECOND_NONE</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
До cURL 7.46.0 значение по умолчанию было <constant>CURL_TIMECOND_IFMODSINCE</constant>.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_TIMEOUT</constant></entry>
|
||
<entry valign="top">
|
||
Максимально позволенное количество секунд для выполнения
|
||
cURL-функций.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_TIMEOUT_MS</constant></entry>
|
||
<entry valign="top">
|
||
Максимально разрешённое количество миллисекунд для выполнения
|
||
cURL-функций.
|
||
<!-- http://curl.haxx.se/libcurl/c/curl_easy_setopt.html -->
|
||
Если библиотека libcurl собрана с обычным системным
|
||
распознавателем имён, то этот промежуток соединения по-прежнему
|
||
будет использовать полносекундное разрешение интервалов ожидания
|
||
с минимально разрешённым временем ожидания в одну секунду.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлен в версии cURL 7.16.2.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_TIMEVALUE</constant></entry>
|
||
<entry valign="top">
|
||
Количество секунд начиная с 1 января 1970 года. Это время
|
||
будет использовано параметром
|
||
<constant>CURLOPT_TIMECONDITION</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_TIMEVALUE_LARGE</constant></entry>
|
||
<entry valign="top">
|
||
Время в секундах с 1 января 1970 года. Время будет использовано <constant>CURLOPT_TIMECONDITION</constant>. По умолчанию ноль.
|
||
Разница между этой опцией и <constant>CURLOPT_TIMEVALUE</constant>
|
||
заключается в типе аргумента. В системах, где 'long' имеет размер всего 32 бита,
|
||
этот параметр нужно указывать для установки дат после 2038 года.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.59.0. Доступно с PHP 7.3.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_UPKEEP_INTERVAL_MS</constant></entry>
|
||
<entry valign="top">
|
||
В некоторые протоколы встроен механизмы «поддержания соединения». Эти механизмы
|
||
обычно отправляют небольшой объем трафика через существующие соединения,
|
||
чтобы держать их открытыми. Эта опция определяет интервал, в течение которого будет поддерживаться соединение.
|
||
Действующий и единственный протокол с механизмом поддержания соединения — это HTTP/2. Когда
|
||
интервал поддержания соединения истекает, протокол HTTP/2 отправляет в соединение кадр PING.
|
||
Значение по умолчанию – <literal>60</literal> секунд.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_UPLOAD_BUFFERSIZE</constant></entry>
|
||
<entry valign="top">
|
||
Предпочтительный размер буфера загрузки cURL в байтах.
|
||
Размер буфера загрузки по умолчанию — 64 килобайта. Максимально можно установить 2 мегабайта.
|
||
Минимально — 16 килобайтов.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_MAX_RECV_SPEED_LARGE</constant></entry>
|
||
<entry valign="top">
|
||
Если скорость скачки превысит это значение (указанное в байтах
|
||
в секунду) в среднем в течение всей передачи, то скачка будет
|
||
приостановлена для поддержания средней скорости меньше либо равной
|
||
данному параметру. По умолчанию скорость не ограничивается.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлен в версии cURL 7.15.5.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_MAX_SEND_SPEED_LARGE</constant></entry>
|
||
<entry valign="top">
|
||
Если загрузка на сервер превысит это значение (указанное в байтах
|
||
в секунду) в среднем в течение всей передачи, то загрузка будет
|
||
приостановлена для поддержания средней скорости меньше либо равной
|
||
данному параметру. По умолчанию скорость не ограничивается.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлен в версии cURL 7.15.5.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSH_AUTH_TYPES</constant></entry>
|
||
<entry valign="top">
|
||
Битовая маска, состоящая из одной или более констант:
|
||
<constant>CURLSSH_AUTH_PUBLICKEY</constant>,
|
||
<constant>CURLSSH_AUTH_PASSWORD</constant>,
|
||
<constant>CURLSSH_AUTH_HOST</constant>,
|
||
<constant>CURLSSH_AUTH_KEYBOARD</constant>. Установите
|
||
<constant>CURLSSH_AUTH_ANY</constant>, чтобы libcurl сам выбрал одну из них.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.16.1.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_IPRESOLVE</constant></entry>
|
||
<entry valign="top">
|
||
Разрешает приложению выбрать, какой вид IP-адресов использовать, когда разрешаются имена хостов.
|
||
Это интересно только для имён хостов, которые разрешаются
|
||
несколько IP-адресов. Возможные значения:
|
||
<constant>CURL_IPRESOLVE_WHATEVER</constant>,
|
||
<constant>CURL_IPRESOLVE_V4</constant>,
|
||
<constant>CURL_IPRESOLVE_V6</constant> и по умолчанию —
|
||
<constant>CURL_IPRESOLVE_WHATEVER</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.10.8.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_FTP_FILEMETHOD</constant></entry>
|
||
<entry valign="top">
|
||
Сообщить дескриптору cURL, какой метод доступа к файлу на сервере FTP использовать. Возможные значения:
|
||
<constant>CURLFTPMETHOD_DEFAULT</constant>,
|
||
<constant>CURLFTPMETHOD_MULTICWD</constant>,
|
||
<constant>CURLFTPMETHOD_NOCWD</constant>
|
||
и <constant>CURLFTPMETHOD_SINGLECWD</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.15.1.
|
||
</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</informaltable>
|
||
</para>
|
||
<para>
|
||
Для следующих значений параметра <parameter>option</parameter>,
|
||
параметр <parameter>value</parameter> должен быть типа
|
||
<type>string</type>:
|
||
<informaltable>
|
||
<tgroup cols="3">
|
||
<thead>
|
||
<row>
|
||
<entry>Параметр</entry>
|
||
<entry>Устанавливаемое значение <parameter>value</parameter></entry>
|
||
<entry>Замечания</entry>
|
||
</row>
|
||
</thead>
|
||
<tbody>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_ABSTRACT_UNIX_SOCKET</constant></entry>
|
||
<entry valign="top">
|
||
Разрешает использовать абстрактный доменный сокет Unix вместо
|
||
установления TCP-соединения с хостом и устанавливает путь
|
||
к указанной строке (<type>string</type>). Эта опция использует ту же семантику,
|
||
что и <constant>CURLOPT_UNIX_SOCKET_PATH</constant>. Эти два параметра
|
||
совместно используют одно и то же хранилище, поэтому для каждого дескриптора можно установить только
|
||
один из них.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и cURL 7.53.0
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_ALTSVC</constant></entry>
|
||
<entry valign="top">
|
||
Передать дескриптору cURL имя файла, который будет работать
|
||
в качестве файла Alt-Svc-кеша для чтения существующих кешированных данных
|
||
и, возможно, также записи их обратно после передачи,
|
||
за исключением случаев, когда для опции <constant>CURLOPT_ALTSVC_CTRL</constant>
|
||
установлено значение <constant>CURLALTSVC_READONLYFILE</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_ALTSVC_CTRL</constant></entry>
|
||
<entry valign="top">
|
||
Заполните битовую маску правильными значениями, чтобы проинструктировать дескриптор cURL,
|
||
как обрабатывать кеш Alt-Svc при передаче.
|
||
Дескриптор cURL принимает заголовки Alt-Svc только через HTTPS.
|
||
Запрос к альтернативному источнику выполнится
|
||
только если источник правильно настроен на обмен данными по протоколу HTTPS.
|
||
Установка любого бита включит движок alt-svc. Доступны следующие опции:
|
||
<constant>CURLALTSVC_H1</constant>,
|
||
<constant>CURLALTSVC_H2</constant>,
|
||
<constant>CURLALTSVC_H3</constant>
|
||
и <constant>CURLALTSVC_READONLYFILE</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_AWS_SIGV4</constant></entry>
|
||
<entry valign="top">
|
||
<para>
|
||
Обеспечивает аутентификацию подписи в заголовке HTTP(S) по протоколу AWS V4.
|
||
</para>
|
||
<para>
|
||
Эта опция переопределит любые другие типы аутентификации, которые были
|
||
установлены опцией <constant>CURLOPT_HTTPAUTH</constant>.
|
||
Этот метод нельзя комбинировать с другими типами аутентификации.
|
||
</para>
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_CAINFO</constant></entry>
|
||
<entry valign="top">
|
||
Имя файла, содержащего один или более сертификатов, с которыми
|
||
будут сверяться узлы. Этот параметр будет полезен только
|
||
при совместной работе с <constant>CURLOPT_SSL_VERIFYPEER</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
Может потребоваться абсолютный путь.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_CAINFO_BLOB</constant></entry>
|
||
<entry valign="top">
|
||
Название PEM-файла, содержащего один или несколько сертификатов для проверки
|
||
узла. Эта опция переопределяет опцию <constant>CURLOPT_CAINFO</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступна начиная с PHP 8.2.0 и cURL 7.77.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_CAPATH</constant></entry>
|
||
<entry valign="top">
|
||
Директория, содержащая несколько CA-сертификатов.
|
||
Используйте этот параметр совместно с
|
||
<constant>CURLOPT_SSL_VERIFYPEER</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_COOKIE</constant></entry>
|
||
<entry valign="top">
|
||
Содержимое заголовка <literal>"Cookie: "</literal>,
|
||
который будет передан в HTTP-запросе.
|
||
Обратите внимание, что несколько cookies разделяются
|
||
точкой с запятой с последующим пробелом
|
||
(например, "<literal>fruit=apple; colour=red</literal>")
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_COOKIEFILE</constant></entry>
|
||
<entry valign="top">
|
||
Имя файла, который содержит cookies. Файл должен быть
|
||
в формате Netscape или просто заголовками HTTP, записанными
|
||
в файл.
|
||
Если в качестве имени файла передали пустую строку, cookies
|
||
сохраняться не будут, но их обработка всё ещё будет включена.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_COOKIEJAR</constant></entry>
|
||
<entry valign="top">
|
||
<simpara>
|
||
Имя файла, в который сохраняются все внутренние файлы cookie при вызове
|
||
деструктора дескриптора.
|
||
</simpara>
|
||
<warning>
|
||
<simpara>
|
||
Начиная с PHP 8.0.0 функция <function>curl_close</function> не выполняет операций
|
||
и <emphasis>не</emphasis> уничтожает дескриптор.
|
||
Для дескриптора вызывают конструкцию <function>unset</function>,
|
||
если файлы cookie требуется записать до автоматического
|
||
уничтожения дескриптора.
|
||
</simpara>
|
||
</warning>
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_COOKIELIST</constant></entry>
|
||
<entry valign="top">
|
||
Строка cookie (т.е. одна строка в формате Netscape/Mozilla или обычный заголовок
|
||
Set-Cookie в стиле HTTP) добавляет этот единственный cookie во внутреннее хранилище cookie.
|
||
<literal>"ALL"</literal> удаляет все файлы cookie, хранящиеся в памяти.
|
||
<literal>"SESS"</literal> удаляет все файлы cookie сессии, хранящиеся в памяти.
|
||
<literal>"FLUSH"</literal> записывает все известные файлы cookie в файл, указанный в <constant>CURLOPT_COOKIEJAR</constant>.
|
||
<literal>"RELOAD"</literal> загружает все файлы cookie из файлов, указанных в <constant>CURLOPT_COOKIEFILE</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с cURL 7.14.1.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_CUSTOMREQUEST</constant></entry>
|
||
<entry valign="top"><para>
|
||
Пользовательский метод запроса, который будет использован вместо
|
||
<literal>"GET"</literal> или <literal>"HEAD"</literal>
|
||
при выполнении HTTP-запроса. Это полезно при запросах
|
||
<literal>"DELETE"</literal> или других, более редких HTTP-запросах.
|
||
Корректными значениями будут: <literal>"GET"</literal>,
|
||
<literal>"POST"</literal>, <literal>"CONNECT"</literal> и так далее;
|
||
т. е. здесь не нужно вводить всю строку с HTTP-запросом. Например,
|
||
указание <literal>"GET /index.html HTTP/1.0\r\n\r\n"</literal>
|
||
будет неправильным.
|
||
<note>
|
||
<para>
|
||
Эту опцию указывают, убедившись, что
|
||
сервер поддерживает заданный тип запроса.
|
||
</para>
|
||
</note>
|
||
</para></entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_DEFAULT_PROTOCOL</constant></entry>
|
||
<entry valign="top"><para>
|
||
Протокол по умолчанию, если он отсутствует в схеме URL.
|
||
</para></entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.45.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_DNS_INTERFACE</constant></entry>
|
||
<entry valign="top"><para>
|
||
Устанавливает имя сетевого интерфейса, к которому привязан DNS.
|
||
Это должно быть имя интерфейса, а не адрес.
|
||
</para></entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.33.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_DNS_LOCAL_IP4</constant></entry>
|
||
<entry valign="top"><para>
|
||
Установить локальный IPv4-адрес, по которому доступен DNS.
|
||
Адрес должен быть представлен в виде строки, содержащий одно число.
|
||
</para></entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.33.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_DNS_LOCAL_IP6</constant></entry>
|
||
<entry valign="top"><para>
|
||
Установить локальный IPv6-адрес, по которому доступен DNS.
|
||
Адрес должен быть представлен в виде строки, содержащий одно число.
|
||
</para></entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.33.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_EGDSOCKET</constant></entry>
|
||
<entry valign="top">
|
||
Наподобие <constant>CURLOPT_RANDOM_FILE</constant>, за исключением
|
||
того, что имя файла устанавливается в сокет Entropy
|
||
Gathering Daemon.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_ENCODING</constant></entry>
|
||
<entry valign="top">
|
||
Содержимое заголовка <literal>"Accept-Encoding: "</literal>.
|
||
Это позволяет декодировать запрос. Поддерживаемыми
|
||
кодировками являются <literal>"identity"</literal>,
|
||
<literal>"deflate"</literal> и <literal>"gzip"</literal>.
|
||
Если передана пустая строка, <literal>""</literal>,
|
||
посылается заголовок, содержащий все поддерживаемые
|
||
типы кодировок.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлен в версии cURL 7.10.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_FTPPORT</constant></entry>
|
||
<entry valign="top">
|
||
Значение, которое будет использовано для определения
|
||
IP-адреса для команды "PORT" FTP-протокола. Команда "PORT"
|
||
сообщает серверу, с каким IP-адресом он должен устанавливать
|
||
соединение. Это может быть IP-адрес, имя хоста, имя сетевого
|
||
интерфейса (под Unix) или просто '-', чтобы использовать системный
|
||
IP-адреса по умолчанию.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_HSTS</constant></entry>
|
||
<entry valign="top">
|
||
<para>
|
||
Имя файла кеша HSTS (HTTP Strict Transport Security).
|
||
</para>
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_HSTS_CTRL</constant></entry>
|
||
<entry valign="top">
|
||
<para>
|
||
Управляет поведением механизма HSTS (HTTP Strict Transport Security).
|
||
Заполните битовую маску правильным набором значений, чтобы проинструктировать
|
||
дескриптор cURL, как обрабатывать хосты HSTS при передаче с этим дескриптором.
|
||
Константа <constant>CURLHSTS_ENABLE</constant> включает запоминаемый (in-memory) кеш HSTS.
|
||
Если файл кеша HSTS определён,
|
||
установка значения <constant>CURLHSTS_READONLYFILE</constant> сделает файл доступным только для чтения.
|
||
</para>
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_INTERFACE</constant></entry>
|
||
<entry valign="top">
|
||
Имя исходящего сетевого интерфейса, который надо использовать. Может быть
|
||
именем интерфейса, IP-адресом или именем хоста.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_KEYPASSWD</constant></entry>
|
||
<entry valign="top">
|
||
Пароль для закрытого ключа опции <constant>CURLOPT_SSLKEY</constant>
|
||
или <constant>CURLOPT_SSH_PRIVATE_KEYFILE</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.16.1.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_KRB4LEVEL</constant></entry>
|
||
<entry valign="top">
|
||
Уровень безопасности KRB4 (Kerberos 4). Любое из следующих
|
||
значений (в порядке от слабого к самому сильному) корректно:
|
||
<literal>"clear"</literal>,
|
||
<literal>"safe"</literal>,
|
||
<literal>"confidential"</literal>,
|
||
<literal>"private".</literal>.
|
||
Если указанная строка отличается от данных значений,
|
||
будет использовано значение <literal>"private"</literal>.
|
||
Установка этого параметра в &null; полностью отключит
|
||
безопасность KRB4. На данный момент безопасность KRB4
|
||
работает только с FTP-транзакциями.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_LOGIN_OPTIONS</constant></entry>
|
||
<entry valign="top">
|
||
Опция может быть задана для установки характерных для протокола настроек логина,
|
||
например, механизма аутентификации "AUTH=NTLM" или "AUTH=*",
|
||
и должна быть задана совместно с опцией <constant>CURLOPT_USERNAME</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.34.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PINNEDPUBLICKEY</constant></entry>
|
||
<entry valign="top">
|
||
Устанавливает зафиксированный открытый ключ.
|
||
Строка должны содержать имя файла, в котором лежит ваш зафиксированный
|
||
открытый ключ. Ожидается формат файла "PEM" или "DEX".
|
||
Строка также может быть числом в формате base64, закодированным sha256 с
|
||
префиксом "sha256//" и разделённая точкой с запятой ";".
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.39.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_POSTFIELDS</constant></entry>
|
||
<entry valign="top">
|
||
<simpara>
|
||
Все данные, передаваемые в HTTP POST-запросе.
|
||
Этот параметр может быть передан
|
||
как в качестве URL-кодированной строки, наподобие
|
||
«<literal>para1=val1&para2=val2&...</literal>», так и
|
||
в виде массива, ключами которого будут имена полей, а значениями —
|
||
их содержимое.
|
||
Если параметр <parameter>value</parameter> — массив,
|
||
заголовок <literal>Content-Type</literal> будет установлен в
|
||
значение <literal>multipart/form-data</literal>.
|
||
</simpara>
|
||
<simpara>
|
||
Файлы можно отправить в виде переданного в параметр <parameter>value</parameter> массива,
|
||
содержащего объекты класса <classname>CURLFile</classname> или <classname>CURLStringFile</classname>.
|
||
</simpara>
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PRIVATE</constant></entry>
|
||
<entry valign="top">
|
||
Любые данные, которые должны быть связаны с этим дескриптором cURL.
|
||
Эти данные можно выбрать подзапросом опции
|
||
<constant>CURLINFO_PRIVATE</constant> функции
|
||
<function>curl_getinfo</function>. Дескриптор cURL ничего не делает с этими данными.
|
||
При работе с множественным дескриптором cURL эти закрытые данные обычно
|
||
выступают в роли уникального ключа для определения дескриптора cURL.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.10.3.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PRE_PROXY</constant></entry>
|
||
<entry valign="top">
|
||
Задайте строку (<type>string</type>), содержащую имя хоста или
|
||
IP-адрес, который будет использован в качестве прокси-сервера, к которому подключается curl, прежде чем
|
||
он подключится к прокси-серверу HTTP(S), указанному в
|
||
опции <constant>CURLOPT_PROXY</constant> для предстоящего запроса.
|
||
Предварительный прокси-сервер может быть только SOCKS-прокси, и перед ним должен стоять префикс
|
||
<literal>[scheme]://</literal>, чтобы указать, какой тип socks использовать.
|
||
Числовой адрес IPv6 должен быть написан в [скобках].
|
||
Установка препрокси в пустую строку явно отключает использование препрокси.
|
||
Чтобы указать номер порта в этой строке, добавьте <literal>:[port]</literal>
|
||
в конец имени хоста. Номер порта прокси-сервера может быть дополнительно
|
||
указан в опции <constant>CURLOPT_PROXYPORT</constant>.
|
||
Если порт для прокси не указан, по умолчанию будет установлен порт 1080.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY</constant></entry>
|
||
<entry valign="top">
|
||
HTTP-прокси, через который будут направляться запросы.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_SERVICE_NAME</constant></entry>
|
||
<entry valign="top">
|
||
Имя сервиса аутентификации прокси.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.43.0 для HTTP-прокси и в cURL 7.49.0 для SOCKS5-прокси.
|
||
Доступно, начиная с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_CAINFO</constant></entry>
|
||
<entry valign="top">
|
||
Путь к прокси-серверу центра сертификации. Задайте путь в виде
|
||
строки (<type>string</type>) с именем файла, содержащего один или несколько сертификатов
|
||
для проверки прокси с помощью HTTPS.
|
||
Этот параметр предназначен для подключения к прокси-серверу HTTPS, а не к серверу HTTPS.
|
||
По умолчанию задан системный путь, где предполагается хранить пакет cacert libcurl.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_CAINFO_BLOB</constant></entry>
|
||
<entry valign="top">
|
||
Имя файла PEM, содержащего один или несколько сертификатов для проверки HTTPS-прокси.
|
||
Эту опция касается подключения к HTTPS-прокси, а не к HTTPS-серверу.
|
||
По умолчанию установлен системный путь,
|
||
по которому предполагается хранить набор сертификатов удостоверяющих центров модуля libcurl.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно начиная с PHP 8.2.0 и libcurl >= cURL 7.77.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_CAPATH</constant></entry>
|
||
<entry valign="top">
|
||
Каталог, содержащий несколько сертификатов центра сертификации для проверки прокси HTTPS.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_CRLFILE</constant></entry>
|
||
<entry valign="top">
|
||
Задайте имя файла с помощью конкатенации CRL (списка отзыва сертификатов)
|
||
в формате PEM для использования при проверке сертификата, которая происходит
|
||
во время обмена SSL.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_KEYPASSWD</constant></entry>
|
||
<entry valign="top">
|
||
Строка, которая будет использована как пароль
|
||
для закрытого ключа опции <constant>CURLOPT_PROXY_SSLKEY</constant>.
|
||
Пароль для загрузки сертификата не нужен, но нужен пароль для загрузки закрытого ключа.
|
||
Этот параметр нужен для подключения к прокси-серверу HTTPS, а не к серверу HTTPS.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_PINNEDPUBLICKEY</constant></entry>
|
||
<entry valign="top">
|
||
Установите закреплённый открытый ключ для HTTPS-прокси. Строка может быть именем файла
|
||
вашего закреплённого открытого ключа. Ожидаемый формат файла: "PEM" или "DER".
|
||
Строка также может быть любым количеством закодированных в base64 хешей sha256, которым предшествует
|
||
"sha256//" и разделяются ";"
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_SSLCERT</constant></entry>
|
||
<entry valign="top">
|
||
Имя файла клиентского сертификата для подключения к прокси HTTPS.
|
||
Формат по умолчанию — "P12" в Secure Transport и "PEM" в других движках;
|
||
его можно изменить с помощью <constant>CURLOPT_PROXY_SSLCERTTYPE</constant>.
|
||
С NSS или Secure Transport это также может быть псевдоним сертификата,
|
||
с которым надо пройти аутентификацию, так как он назван в базе данных безопасности.
|
||
Если надо использовать файл из текущего каталога, к нему добавляют
|
||
префикс "./", чтобы избежать путаницы с псевдонимом.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_SSLCERTTYPE</constant></entry>
|
||
<entry valign="top">
|
||
Формат сертификата клиента, который будет использован при подключении к HTTPS-прокси.
|
||
Поддерживаемые форматы: "PEM" и "DER", за исключением Secure Transport.
|
||
OpenSSL (версии 0.9.3 и новее) и Secure Transport
|
||
(в iOS 5 или новее или OS X 10.7 или новее) также поддерживают "P12"
|
||
для файлов в кодировке PKCS#12. По умолчанию "PEM".
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_SSL_CIPHER_LIST</constant></entry>
|
||
<entry valign="top">
|
||
Список шифров, которые будут использованы для подключения к прокси HTTPS.
|
||
Список должен быть синтаксически правильным, он состоит из одной или нескольких строк шифров,
|
||
разделённых двоеточиями. Запятые или пробелы также являются допустимыми разделителями,
|
||
но обычно качестве операторов используются двоеточия, !, - и +.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_TLS13_CIPHERS</constant></entry>
|
||
<entry valign="top">
|
||
Список наборов шифров, которые будут использованы для подключения TLS 1.3 к прокси.
|
||
Список должен быть синтаксически правильным, он состоит из одной или нескольких
|
||
строк набора шифров, разделённых двоеточиями. Эту опцию используют
|
||
только тогда, когда curl собран для работы с OpenSSL 1.1.1 или новее.
|
||
Если выбран другой бэкенд SSL, можно попытаться установить
|
||
наборы шифров TLS 1.3 через параметр <constant>CURLOPT_PROXY_SSL_CIPHER_LIST</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.61.0.
|
||
Доступно при сборке с OpenSSL >= 1.1.1.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_SSLKEY</constant></entry>
|
||
<entry valign="top">
|
||
Имя файла личного ключа, который будет использован для подключения к прокси HTTPS.
|
||
Формат по умолчанию — "PEM", и его можно изменить через опцию
|
||
<constant>CURLOPT_PROXY_SSLKEYTYPE</constant>.
|
||
(Только для iOS и Mac OS X). Этот параметр игнорируется, если curl был создан для Secure Transport.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
Доступно, если включён встроенный TLS.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_SSLKEYTYPE</constant></entry>
|
||
<entry valign="top">
|
||
Формат вашего закрытого ключа. Поддерживаемые форматы: "PEM", "DER" и "ENG".
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_TLSAUTH_PASSWORD</constant></entry>
|
||
<entry valign="top">
|
||
Пароль для метода аутентификации TLS, который задан
|
||
в параметре <constant>CURLOPT_PROXY_TLSAUTH_TYPE</constant>. Требует, чтобы
|
||
также был установлен параметр <constant>CURLOPT_PROXY_TLSAUTH_USERNAME</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_TLSAUTH_TYPE</constant></entry>
|
||
<entry valign="top">
|
||
<simpara>
|
||
Метод аутентификации TLS для HTTPS-соединения. Поддерживаемый метод — <literal>SRP</literal>.
|
||
</simpara>
|
||
<note>
|
||
<para>
|
||
Аутентификация Secure Remote Password (SRP) для TLS обеспечивает взаимную аутентификацию,
|
||
если обе стороны имеют общий секрет. Чтобы использовать TLS-SRP, вы также должны установить
|
||
параметры <constant>CURLOPT_PROXY_TLSAUTH_USERNAME</constant> и
|
||
<constant>CURLOPT_PROXY_TLSAUTH_PASSWORD</constant>.
|
||
</para>
|
||
</note>
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXY_TLSAUTH_USERNAME</constant></entry>
|
||
<entry valign="top">
|
||
Имя пользователя, которое будет использовано для метода аутентификации TLS прокси-сервера HTTPS, указанного в параметре
|
||
<constant>CURLOPT_PROXY_TLSAUTH_TYPE</constant>. Требует, чтобы параметр
|
||
<constant>CURLOPT_PROXY_TLSAUTH_PASSWORD</constant> также был установлен.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступно с PHP 7.3.0 и libcurl >= cURL 7.52.0.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXYUSERPWD</constant></entry>
|
||
<entry valign="top">
|
||
Логин и пароль, записанные в виде
|
||
<literal>"[username]:[password]"</literal>, которые будут использованы при
|
||
соединении через прокси.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_RANDOM_FILE</constant></entry>
|
||
<entry valign="top">
|
||
Имя файла для инициализации генератора
|
||
случайных чисел для SSL.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_RANGE</constant></entry>
|
||
<entry valign="top">
|
||
Диапазон данных, которые нужно загрузить, в формате
|
||
<literal>"X-Y"</literal>, причём либо X, либо Y могут быть
|
||
опущены. Протокол HTTP также поддерживает передачу
|
||
нескольких диапазонов, разделённых запятыми, они задаются
|
||
в формате <literal>"X-Y,N-M"</literal>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_REFERER</constant></entry>
|
||
<entry valign="top">
|
||
Содержимое заголовка <literal>"Referer: "</literal>, который будет
|
||
использован в HTTP-запросе.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SASL_AUTHZID</constant></entry>
|
||
<entry valign="top">
|
||
Идентификатор авторизации (authzid) для передачи. Эту опцию можно применять только
|
||
для механизма аутентификации PLAIN SASL, где это необязательно.
|
||
Если идентификатор авторизации не задан, только идентификатор аутентификации (authcid),
|
||
как определено в имени пользователя, будет отправлен на сервер (вместе с паролем).
|
||
Сервер получит идентификатор авторизации (authzid) из идентификатора аутентификации (authcid),
|
||
если идентификатор авторизации не был указан,
|
||
и затем он будет использовать внутренне.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SERVICE_NAME</constant></entry>
|
||
<entry valign="top">
|
||
Имя сервиса аутентификации.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.43.0. доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSH_HOST_PUBLIC_KEY_MD5</constant></entry>
|
||
<entry valign="top">
|
||
Строка, содержащая 32 шестнадцатеричных цифры. Строка должна являться
|
||
контрольной суммой по алгоритму MD5 открытого ключа удалённого компьютера и libcurl будет сбрасывать
|
||
соединение к удалённому хосту до тех пор, пока контрольная сумма не будет соответствовать публичному ключу.
|
||
Эта опция предназначена только для передачи данных с помощью SCP и SFTP.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.17.1.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256</constant></entry>
|
||
<entry valign="top">
|
||
Закодированный в Base64 по алгоритму SHA256 хеш публичного ключа удалённого хоста.
|
||
Передача завершится ошибкой, если заданный хеш не соответствует хешу
|
||
удалённого хоста.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSH_PUBLIC_KEYFILE</constant></entry>
|
||
<entry valign="top">
|
||
Имя файла для вашего публичного ключа. Если не задано, то libcurl использует по
|
||
умолчанию файл $HOME/.ssh/id_dsa.pub, если переменная окружения HOME установлена и
|
||
файл "id_dsa.pub" в текущей директории, если переменная HOME не установлена.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.16.1.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSH_PRIVATE_KEYFILE</constant></entry>
|
||
<entry valign="top">
|
||
Имя файла для вашего приватного ключа. Если не задано, то libcurl использует по
|
||
умолчанию файл $HOME/.ssh/id_dsa, если переменная окружения HOME установлена и
|
||
файл "id_dsa" в текущей директории, если переменная HOME не установлена.
|
||
Если файл защищён паролем, установите пароль с помощью
|
||
<constant>CURLOPT_KEYPASSWD</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.16.1.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSL_CIPHER_LIST</constant></entry>
|
||
<entry valign="top">
|
||
Список шифров для SSL-передач. Например,
|
||
<literal>RC4-SHA</literal> и <literal>TLSv1</literal> —
|
||
корректные списки шифров.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSL_EC_CURVES</constant></entry>
|
||
<entry valign="top">
|
||
Разделённый двоеточием список основанных на эллиптических кривых алгоритмов.
|
||
Например,
|
||
<literal>X25519:P-521</literal> — это допустимый список из двух эллиптических кривых.
|
||
Эта опция определят клиентские алгоритмы обмена во время SSL-рукопожатия,
|
||
если дескриптор cURL на SSL-бэкенде собран с поддержкой этой опции.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSLCERT</constant></entry>
|
||
<entry valign="top">
|
||
Имя файла с корректно отформатированным PEM-сертификатом.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSLCERTPASSWD</constant></entry>
|
||
<entry valign="top">
|
||
Пароль для сертификата опции <constant>CURLOPT_SSLCERT</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSLCERTTYPE</constant></entry>
|
||
<entry valign="top">
|
||
Формат сертификата. Поддерживаются форматы
|
||
<literal>"PEM"</literal> (по умолчанию), <literal>"DER"</literal>
|
||
и <literal>"ENG"</literal>.
|
||
Начиная с OpenSSL 0.9.3, <literal>"P12"</literal> (для файлов, закодированных в PKCS#12)
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлен в версии cURL 7.9.3.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSLENGINE</constant></entry>
|
||
<entry valign="top">
|
||
Идентификатор механизма шифрования для закрытого ключа SSL,
|
||
указанного в параметре <constant>CURLOPT_SSLKEY</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSLENGINE_DEFAULT</constant></entry>
|
||
<entry valign="top">
|
||
Идентификатор механизма шифрования для
|
||
асимметричных операций шифрования.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSLKEY</constant></entry>
|
||
<entry valign="top">
|
||
Имя файла с закрытым ключом SSL.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSLKEYPASSWD</constant></entry>
|
||
<entry valign="top"><para>
|
||
Тайный пароль для закрытого
|
||
ключа SSL, указанного параметром
|
||
<constant>CURLOPT_SSLKEY</constant>.
|
||
<note>
|
||
<para>
|
||
Так как этот параметр содержит ценный пароль, помните,
|
||
что содержащий его PHP-скрипт нужно хранить в безопасном месте.
|
||
</para>
|
||
</note>
|
||
</para></entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SSLKEYTYPE</constant></entry>
|
||
<entry valign="top">
|
||
Тип закрытого ключа SSL, указанного в параметре
|
||
<constant>CURLOPT_SSLKEY</constant>. Поддерживаются следующие
|
||
типы ключей:
|
||
<literal>"PEM"</literal> (по умолчанию), <literal>"DER"</literal>
|
||
и <literal>"ENG"</literal>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_TLS13_CIPHERS</constant></entry>
|
||
<entry valign="top">
|
||
Список комплектов шифров для соединения TLS 1.3. Список должен быть
|
||
синтаксически правильным, он состоит из одной или нескольких строк набора шифров, разделённых двоеточиями.
|
||
Эту опцию используют только тогда, когда curl собран для работы OpenSSL 1.1.1 или новее.
|
||
Если выбран другой бэкенд SSL, можно попробовать установить
|
||
наборы шифров TLS 1.3 через параметр <constant>CURLOPT_SSL_CIPHER_LIST</constant>.
|
||
</entry>
|
||
<entry valign="top">
|
||
Доступен с PHP 7.3.0 и libcurl >= cURL 7.61.0. Доступен, когда собран с библиотекой OpenSSL >= 1.1.1.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_UNIX_SOCKET_PATH</constant></entry>
|
||
<entry valign="top">
|
||
Разрешает использовать доменные сокеты UNIX в качестве конечной точки для
|
||
соединения и устанавливает путь к ним равным заданной строке (<type>string</type>).
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.40.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_URL</constant></entry>
|
||
<entry valign="top">
|
||
Загружаемый URL. Данный параметр может быть также установлен
|
||
при инициализации сеанса с помощью <function>curl_init</function>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_USERAGENT</constant></entry>
|
||
<entry valign="top">
|
||
Содержимое заголовка <literal>"User-Agent: "</literal>, посылаемого
|
||
в HTTP-запросе.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_USERNAME</constant></entry>
|
||
<entry valign="top">
|
||
Имя пользователя для аутентификации.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.19.1.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PASSWORD</constant></entry>
|
||
<entry valign="top">
|
||
Пароль для аутентификации.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.19.1.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_USERPWD</constant></entry>
|
||
<entry valign="top">
|
||
Логин и пароль для соединения, указанные в формате
|
||
<literal>"[username]:[password]"</literal>.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_XOAUTH2_BEARER</constant></entry>
|
||
<entry valign="top">
|
||
Задаёт токен доступа OAuth 2.0.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.33.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</informaltable>
|
||
</para>
|
||
<para>
|
||
Для следующих значений параметра <parameter>option</parameter>,
|
||
параметр <parameter>value</parameter> должен быть массивом:
|
||
<informaltable>
|
||
<tgroup cols="3">
|
||
<thead>
|
||
<row>
|
||
<entry>Параметр</entry>
|
||
<entry>Устанавливаемое значение <parameter>value</parameter></entry>
|
||
<entry>Замечания</entry>
|
||
</row>
|
||
</thead>
|
||
<tbody>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_CONNECT_TO</constant></entry>
|
||
<entry valign="top">
|
||
Соединяться с хостом на установленном порте, игнорируя URL.
|
||
Принимает массив строк формата
|
||
<literal>HOST:PORT:CONNECT-TO-HOST:CONNECT-TO-PORT</literal>.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.49.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_HTTP200ALIASES</constant></entry>
|
||
<entry valign="top">
|
||
Массив HTTP 200 ответов, которые будут трактоваться
|
||
корректными ответами, а не ошибочными.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлен в cURL 7.10.3.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_HTTPHEADER</constant></entry>
|
||
<entry valign="top">
|
||
Массив устанавливаемых HTTP-заголовков в формате
|
||
<code>
|
||
array('Content-type: text/plain', 'Content-length: 100')
|
||
</code>
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_POSTQUOTE</constant></entry>
|
||
<entry valign="top">
|
||
Массив FTP-команд, выполняемых на сервере, после выполнения
|
||
FTP-запроса.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROXYHEADER</constant></entry>
|
||
<entry valign="top">
|
||
Массив пользовательских HTTP-заголовков для отправки на прокси
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.37.0. Доступно с PHP 7.0.7.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_QUOTE</constant></entry>
|
||
<entry valign="top">
|
||
Массив FTP-команд, выполняемых на сервере перед выполнением
|
||
FTP-запроса.
|
||
</entry>
|
||
<entry valign="top">
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_RESOLVE</constant></entry>
|
||
<entry valign="top">
|
||
Предоставляет адрес для определённой пары хоста и порта. Массив,
|
||
содержащий строки, состоящие из имени хоста, порта и IP-адреса,
|
||
разделённых двоеточием. Пример:
|
||
<code>
|
||
array("example.com:80:127.0.0.1")
|
||
</code>
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлено в cURL 7.21.3.
|
||
</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</informaltable>
|
||
</para>
|
||
<para>
|
||
Для следующих значений параметра <parameter>option</parameter>
|
||
параметр <parameter>value</parameter> должен быть потоковым
|
||
дескриптором (возвращаемым, например, функцией <function>fopen</function>):
|
||
<informaltable>
|
||
<tgroup cols="3">
|
||
<thead>
|
||
<row>
|
||
<entry>Параметр</entry>
|
||
<entry>Устанавливаемое значение <parameter>value</parameter></entry>
|
||
</row>
|
||
</thead>
|
||
<tbody>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_FILE</constant></entry>
|
||
<entry valign="top">
|
||
Файл, в который будет записан результат передачи. По умолчанию
|
||
запись идёт в поток вывода <constant>STDOUT</constant> (окно браузера).
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_INFILE</constant></entry>
|
||
<entry valign="top">
|
||
Файл, из которого должно идти чтение данных, при загрузке на сервер.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_STDERR</constant></entry>
|
||
<entry valign="top">
|
||
Альтернативный файл для вывода ошибок, который будет использован вместо потока ошибок
|
||
<constant>STDERR</constant>.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_WRITEHEADER</constant></entry>
|
||
<entry valign="top">
|
||
Файл, в который будут записаны заголовки текущей операции.
|
||
</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</informaltable>
|
||
</para>
|
||
<para>
|
||
Для следующих значений параметра <parameter>option</parameter>,
|
||
параметр <parameter>value</parameter> должен быть правильным именем функции
|
||
или замыканием:
|
||
<informaltable>
|
||
<tgroup cols="3">
|
||
<thead>
|
||
<row>
|
||
<entry>Параметр</entry>
|
||
<entry>Устанавливаемое значение <parameter>value</parameter></entry>
|
||
<entry>Примечания</entry>
|
||
</row>
|
||
</thead>
|
||
<tbody>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_HEADERFUNCTION</constant></entry>
|
||
<entry valign="top">
|
||
Callback-функция принимает два параметра.
|
||
Первым параметром является дескриптор cURL, вторым параметром
|
||
является строка с записываемыми заголовками. Заголовки должны
|
||
быть записаны с помощью данной callback-функции. Должна возвратить
|
||
количество записанных байт.
|
||
</entry>
|
||
<entry></entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PASSWDFUNCTION</constant></entry>
|
||
<entry valign="top">
|
||
Callback-функция принимает три параметра.
|
||
Первым параметром идёт дескриптор cURL, вторым параметром
|
||
— строка с запросом пароля, третьим —
|
||
максимальная длина пароля. Должна возвратить строку, содержащую пароль.
|
||
</entry>
|
||
<entry>Удалено, начиная с PHP 7.3.0.</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_PROGRESSFUNCTION</constant></entry>
|
||
<entry valign="top">
|
||
<para>
|
||
Callback-функция принимает пять параметров.
|
||
Первый является дескриптором cURL, второй — общим количеством байт,
|
||
которое ожидается загрузить с сервера, третий — количеством уже загруженных байтов,
|
||
четвёртый — общим количеством байтов, для которых ожидается отправка на сервер,
|
||
и пятый — количеством уже отправленных байтов.
|
||
</para>
|
||
<note>
|
||
<para>
|
||
Callback-функция вызывается, только если опция <constant>CURLOPT_NOPROGRESS</constant>
|
||
установлена в значение &false;.
|
||
</para>
|
||
</note>
|
||
<para>
|
||
Можно вернуть ненулевое значение, чтобы отменить передачу.
|
||
В этом случае будет выдана ошибка <constant>CURLE_ABORTED_BY_CALLBACK</constant>.
|
||
</para>
|
||
</entry>
|
||
<entry></entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_READFUNCTION</constant></entry>
|
||
<entry valign="top">
|
||
Callback-функция принимает три параметра.
|
||
Первым параметром является дескриптор cURL,
|
||
вторым параметром — ресурс потока, переданный
|
||
cURL через опцию <constant>CURLOPT_INFILE</constant>,
|
||
а третьим — максимально разрешённое
|
||
количество данных для чтения.
|
||
Callback-функция должна возвратить строку с длиной,
|
||
не превышающей запрошенного количества данных, обычно
|
||
с помощью чтения из переданного потокового ресурса.
|
||
Должна возвратить пустую строку для сигнала о конце файла
|
||
<literal>EOF</literal>.
|
||
</entry>
|
||
<entry></entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_WRITEFUNCTION</constant></entry>
|
||
<entry valign="top">
|
||
Callback-функция принимает два параметра.
|
||
Первым параметром является дескриптор cURL, а
|
||
вторым — строка с записываемыми данными.
|
||
Данные должны быть сохранены с помощью данной функции.
|
||
Она должна возвратить точное количество записанных байт, иначе
|
||
закачка будет прервана с ошибкой.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_XFERINFOFUNCTION</constant></entry>
|
||
<entry valign="top">
|
||
Callback-функция, принимающая два параметра.
|
||
Имеет схожее назначение с опцией <constant>CURLOPT_PROGRESSFUNCTION</constant>,
|
||
но является более современным и предпочтительным вариантом от cURL.
|
||
</entry>
|
||
<entry valign="top">
|
||
Добавлена в версии 7.32.0. Доступна, начиная с PHP 8.2.0.
|
||
</entry>
|
||
<entry></entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</informaltable>
|
||
</para>
|
||
<para>
|
||
Другие значения:
|
||
<informaltable>
|
||
<tgroup cols="3">
|
||
<thead>
|
||
<row>
|
||
<entry>Параметр</entry>
|
||
<entry>Устанавливаемое значение <parameter>value</parameter></entry>
|
||
</row>
|
||
</thead>
|
||
<tbody>
|
||
<row>
|
||
<entry valign="top"><constant>CURLOPT_SHARE</constant></entry>
|
||
<entry valign="top">
|
||
Результат выполнения функции <function>curl_share_init</function>.
|
||
Разрешает обработчику cURL использовать данные из общего обработчика.
|
||
</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</informaltable>
|
||
</para>
|
||
</listitem>
|
||
</varlistentry>
|
||
</variablelist>
|
||
</para>
|
||
</refsect1>
|
||
|
||
<refsect1 role="returnvalues">
|
||
&reftitle.returnvalues;
|
||
<para>
|
||
&return.success;
|
||
</para>
|
||
</refsect1>
|
||
|
||
<refsect1 role="changelog">
|
||
&reftitle.changelog;
|
||
<para>
|
||
<informaltable>
|
||
<tgroup cols="2">
|
||
<thead>
|
||
<row>
|
||
<entry>&Version;</entry>
|
||
<entry>&Description;</entry>
|
||
</row>
|
||
</thead>
|
||
<tbody>
|
||
&curl.changelog.handle-param;
|
||
<row>
|
||
<entry>7.3.15, 7.4.3</entry>
|
||
<entry>
|
||
Добавлен параметр <constant>CURLOPT_HTTP09_ALLOWED</constant>.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry>7.3.0</entry>
|
||
<entry>
|
||
Добавлены параметры <constant>CURLOPT_ABSTRACT_UNIX_SOCKET</constant>, <constant>CURLOPT_KEEP_SENDING_ON_ERROR</constant>,
|
||
<constant>CURLOPT_PRE_PROXY</constant>, <constant>CURLOPT_PROXY_CAINFO</constant>,
|
||
<constant>CURLOPT_PROXY_CAPATH</constant>, <constant>CURLOPT_PROXY_CRLFILE</constant>,
|
||
<constant>CURLOPT_PROXY_KEYPASSWD</constant>, <constant>CURLOPT_PROXY_PINNEDPUBLICKEY</constant>,
|
||
<constant>CURLOPT_PROXY_SSLCERT</constant>, <constant>CURLOPT_PROXY_SSLCERTTYPE</constant>,
|
||
<constant>CURLOPT_PROXY_SSL_CIPHER_LIST</constant>, <constant>CURLOPT_PROXY_SSLKEY</constant>,
|
||
<constant>CURLOPT_PROXY_SSLKEYTYPE</constant>, <constant>CURLOPT_PROXY_SSL_OPTIONS</constant>,
|
||
<constant>CURLOPT_PROXY_SSL_VERIFYHOST</constant>, <constant>CURLOPT_PROXY_SSL_VERIFYPEER</constant>,
|
||
<constant>CURLOPT_PROXY_SSLVERSION</constant>, <constant>CURLOPT_PROXY_TLSAUTH_PASSWORD</constant>,
|
||
<constant>CURLOPT_PROXY_TLSAUTH_TYPE</constant>, <constant>CURLOPT_PROXY_TLSAUTH_USERNAME</constant>,
|
||
<constant>CURLOPT_SOCKS5_AUTH</constant>, <constant>CURLOPT_SUPPRESS_CONNECT_HEADERS</constant>,
|
||
<constant>CURLOPT_DISALLOW_USERNAME_IN_URL</constant>, <constant>CURLOPT_DNS_SHUFFLE_ADDRESSES</constant>,
|
||
<constant>CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS</constant>, <constant>CURLOPT_HAPROXYPROTOCOL</constant>,
|
||
<constant>CURLOPT_PROXY_TLS13_CIPHERS</constant>, <constant>CURLOPT_SSH_COMPRESSION</constant>,
|
||
<constant>CURLOPT_TIMEVALUE_LARGE</constant> и <constant>CURLOPT_TLS13_CIPHERS</constant>.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry>7.0.7</entry>
|
||
<entry>
|
||
Добавлены параметры и их значения <constant>CURL_HTTP_VERSION_2</constant>, <constant>CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE</constant>,
|
||
<constant>CURL_HTTP_VERSION_2TLS</constant>, <constant>CURL_REDIR_POST_301</constant>,
|
||
<constant>CURL_REDIR_POST_302</constant>, <constant>CURL_REDIR_POST_303</constant>,
|
||
<constant>CURL_REDIR_POST_ALL</constant>, <constant>CURL_VERSION_KERBEROS5</constant>,
|
||
<constant>CURL_VERSION_PSL</constant>, <constant>CURL_VERSION_UNIX_SOCKETS</constant>,
|
||
<constant>CURLAUTH_NEGOTIATE</constant>, <constant>CURLAUTH_NTLM_WB</constant>,
|
||
<constant>CURLFTP_CREATE_DIR</constant>, <constant>CURLFTP_CREATE_DIR_NONE</constant>,
|
||
<constant>CURLFTP_CREATE_DIR_RETRY</constant>, <constant>CURLHEADER_SEPARATE</constant>,
|
||
<constant>CURLHEADER_UNIFIED</constant>, <constant>CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE</constant>,
|
||
<constant>CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE</constant>, <constant>CURLMOPT_MAX_HOST_CONNECTIONS</constant>,
|
||
<constant>CURLMOPT_MAX_PIPELINE_LENGTH</constant>, <constant>CURLMOPT_MAX_TOTAL_CONNECTIONS</constant>,
|
||
<constant>CURLOPT_CONNECT_TO</constant>, <constant>CURLOPT_DEFAULT_PROTOCOL</constant>,
|
||
<constant>CURLOPT_DNS_INTERFACE</constant>, <constant>CURLOPT_DNS_LOCAL_IP4</constant>,
|
||
<constant>CURLOPT_DNS_LOCAL_IP6</constant>, <constant>CURLOPT_EXPECT_100_TIMEOUT_MS</constant>,
|
||
<constant>CURLOPT_HEADEROPT</constant>, <constant>CURLOPT_LOGIN_OPTIONS</constant>,
|
||
<constant>CURLOPT_PATH_AS_IS</constant>, <constant>CURLOPT_PINNEDPUBLICKEY</constant>,
|
||
<constant>CURLOPT_PIPEWAIT</constant>, <constant>CURLOPT_PROXY_SERVICE_NAME</constant>,
|
||
<constant>CURLOPT_PROXYHEADER</constant>, <constant>CURLOPT_SASL_IR</constant>,
|
||
<constant>CURLOPT_SERVICE_NAME</constant>, <constant>CURLOPT_SSL_ENABLE_ALPN</constant>,
|
||
<constant>CURLOPT_SSL_ENABLE_NPN</constant>, <constant>CURLOPT_SSL_FALSESTART</constant>,
|
||
<constant>CURLOPT_SSL_VERIFYSTATUS</constant>, <constant>CURLOPT_STREAM_WEIGHT</constant>,
|
||
<constant>CURLOPT_TCP_FASTOPEN</constant>, <constant>CURLOPT_TFTP_NO_OPTIONS</constant>,
|
||
<constant>CURLOPT_UNIX_SOCKET_PATH</constant>, <constant>CURLOPT_XOAUTH2_BEARER</constant>,
|
||
<constant>CURLPROTO_SMB</constant>, <constant>CURLPROTO_SMBS</constant>,
|
||
<constant>CURLPROXY_HTTP_1_0</constant>, <constant>CURLSSH_AUTH_AGENT</constant> и
|
||
<constant>CURLSSLOPT_NO_REVOKE</constant>.
|
||
</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</informaltable>
|
||
</para>
|
||
</refsect1>
|
||
|
||
<refsect1 role="examples">
|
||
&reftitle.examples;
|
||
<para>
|
||
<example>
|
||
<title>Инициализация сеанса CURL и загрузка веб-страницы</title>
|
||
<programlisting role="php">
|
||
<![CDATA[
|
||
<?php
|
||
|
||
// Создаём новый ресурс cURL
|
||
$ch = curl_init();
|
||
|
||
// Устанавливаем URL-адрес и другие параметры
|
||
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
|
||
curl_setopt($ch, CURLOPT_HEADER, false);
|
||
|
||
// Захватываем страницу и передаём её браузеру
|
||
curl_exec($ch);
|
||
|
||
// Закрываем дескриптор cURL и освобождаем ресурсы системы
|
||
curl_close($ch);
|
||
|
||
?>
|
||
]]>
|
||
</programlisting>
|
||
</example>
|
||
</para>
|
||
</refsect1>
|
||
|
||
<refsect1 role="notes">
|
||
&reftitle.notes;
|
||
<note>
|
||
<para>
|
||
Передача массива в параметр <constant>CURLOPT_POSTFIELDS</constant>
|
||
закодирует данные с типом <emphasis>multipart/form-data</emphasis>,
|
||
тогда как передача URL-кодированной строки закодирует данные
|
||
с типом <emphasis>application/x-www-form-urlencoded</emphasis>.
|
||
</para>
|
||
</note>
|
||
</refsect1>
|
||
|
||
<refsect1 role="seealso">
|
||
&reftitle.seealso;
|
||
<para>
|
||
<simplelist>
|
||
<member><function>curl_setopt_array</function></member>
|
||
<member><classname>CURLFile</classname></member>
|
||
<member><classname>CURLStringFile</classname></member>
|
||
</simplelist>
|
||
</para>
|
||
</refsect1>
|
||
|
||
</refentry>
|
||
<!-- Keep this comment at the end of the file
|
||
Local variables:
|
||
mode: sgml
|
||
sgml-omittag:t
|
||
sgml-shorttag:t
|
||
sgml-minimize-attributes:nil
|
||
sgml-always-quote-attributes:t
|
||
sgml-indent-step:1
|
||
sgml-indent-data:t
|
||
indent-tabs-mode:nil
|
||
sgml-parent-document:nil
|
||
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
|
||
sgml-exposed-tags:nil
|
||
sgml-local-catalogs:nil
|
||
sgml-local-ecat-files:nil
|
||
End:
|
||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||
vim: et tw=78 syn=sgml
|
||
vi: ts=1 sw=1
|
||
-->
|