Новости | Документация | Download | Webboard | FAQ | Поиск | Контакты


curl_setopt

(PHP 4 >= 4.0.2, PHP 5)

curl_setoptУстанавливает параметр для сеанса CURL

Описание

bool curl_setopt ( resource $ch , string $option , mixed $value )

Функция curl_setopt() Устанавливает параметр для сеанса CURL, заданного аргументом ch . Аргумент option задает устанавливаемый параметр, а value - его значение.

Для перечисленных ниже параметров, value должен быть целым числом:

  • CURLOPT_INFILESIZE : при закачке файла на удаленный сервер, следует использовать этот параметр для указания ожидаемого размера файла.
  • CURLOPT_VERBOSE : При установке этого параметра в ненулевое значение cURL будет выводить подробные сообщения о всех производимых действиях.
  • CURLOPT_HEADER : При установке этого параметра в ненулевое значение результат будет включать полученные заголовки.
  • CURLOPT_NOPROGRESS : При установке этого параметра в ненулевое значение не будет выводиться индикатор прогресса операции.

    Замечание: В PHP этот параметр устанавливается в ненулевое значение по умолчнию. Изменять его значение рекомендуется только при отладке.

  • CURLOPT_NOBODY : При установке этого параметра в ненулевое значение результат не будет включать документ (например, вам нужно получить только заголовки).
  • CURLOPT_FAILONERROR : При установке этого параметра в ненулевое значение, получение HTTP кода более 300 считается ошибкой.
  • CURLOPT_UPLOAD : Установка этого параметра в ненулевое значение означает, что будет производиться закачка файла на удаленный сервер.
  • CURLOPT_POST : При установке этого параметра в ненулевое значение будет отправлен HTTP запрос методом POST типа application/x-www-form-urlencoded, используемый браузерами при отправке форм.
  • CURLOPT_FTPLISTONLY : При установке этого параметра в ненулевое значение будет получен список файлов в директории FTP сервера.
  • CURLOPT_FTPAPPEND : При установке этого параметра в ненулевое значение данные будут добавляться к файлу на FTP сервере, в противном случае файл будет перезаписан.
  • CURLOPT_NETRC : При установке этого параметра в ненулевое значение будет сделана попытка найти имя пользователя и пароль к удаленному серверу в файле ~./netrc.
  • CURLOPT_FOLLOWLOCATION : При установке этого параметра в ненулевое значение, при получении HTTP заголовка "Location: " будет происходить перенаправление на указанный этим заголовком URL (это действие выполняется рекурсивно, для каждого полученного заголовка "Location:").
  • CURLOPT_PUT : При установке этого параметра в ненулевое значение, будет производиться закачка файла методом HTTP PUT. Файл задается параметрами CURLOPT_INFILE и CURLOPT_INFILESIZE .
  • CURLOPT_MUTE : При установке этого параметра в ненулевое значение, все сообщения cURL будут подавляться.
  • CURLOPT_TIMEOUT : Задает масимальное время выполнения операции в секундах.
  • CURLOPT_LOW_SPEED_LIMIT : Задает минимальную скорость передачи в байтах в секунду. Если в течении времени, заданного параметром CURLOPT_LOW_SPEED_TIME , скорость передачи будет меньше этого значения, операция будет прервана.
  • CURLOPT_LOW_SPEED_TIME : Задает время в секундах, в течение которого скорость передачи должна быть ниже, чем CURLOPT_LOW_SPEED_LIMIT , чтобы операция была признана слишком медленной и прервана.
  • CURLOPT_RESUME_FROM : Задает позицию в файле в байтах, с которой начнется передача данных.
  • CURLOPT_CAINFO : Имя файла, содержащего один или более сертификатов, которые будут использованы при проверке подлинности удаленного сервера. Имеет значение только совместно с параметром CURLOPT_SSL_VERIFYPEER .
  • CURLOPT_SSL_VERIFYPEER : Установите этот параметр в ноль, чтобы запретить проверку сертификата удаленного сервера (начиная с curl 7.10, по умолчанию этот параметр имеет значение TRUE). Дополнительные сертификаты можно задать с помощью параметра CURLOPT_CAINFO (добавленного в in curl 7.9.8). Можно также указать путь к файлам сертификатов в параметре CURLOPT_CAPATH . Если CURLOPT_SSL_VERIFYPEER установлен в 0, возможно, также потребуется установить CURLOPT_SSL_VERIFYHOST в 1 или 0 (по умолчанию 2).
  • CURLOPT_SSLVERSION : Целое число, указывающее, какую версию SSL использовать (2 или 3). По умолчанию версия SSL определяется автоматически, но в некоторых случаях требуется явное указание.
  • CURLOPT_SSL_VERIFYHOST : Задает проверку имени, указанного в сертификате удаленного сервера, при установлении SSL соединения. Значение 1 означает проверку существования имени, значение 2 - кроме того, и проверку соответствия имени хоста.
  • CURLOPT_TIMECONDITION : Задает способ интерпретации значения параметра CURLOPT_TIMEVALUE . Возможные значения: TIMECOND_IFMODSINCE или TIMECOND_ISUNMODSINCE. Применяется только для протокола HTTP.
  • CURLOPT_TIMEVALUE : Задает время в секундах с 1 января 1970 г. Это значение будет использовано в соответствии со значением параметра CURLOPT_TIMECONDITION (по умолчанию TIMECOND_IFMODSINCE).
  • CURLOPT_RETURNTRANSFER : При установке этого параметра в ненулевое значение CURL будет возвращать результат, а не выводить его.

Для перечисленных ниже параметров, value должен быть строкой:

  • CURLOPT_URL : URL, с которым будет производиться операция. Значение этого параметра также может быть задано в вызове функции curl_init().
  • CURLOPT_USERPWD : Стока с именем пользователя и паролем в виде [username]:[password].
  • CURLOPT_PROXYUSERPWD : Стока с именем пользователя и паролем к HTTP прокси-серверу в виде [username]:[password].
  • CURLOPT_RANGE : Задает участок файла, который нужно загрузить, в формате "X-Y" , причем X или Y могут быть опущены. Протокол HTTP также поддерживает передачу нескольких фрагментов файла, это задается в виде "X-Y,N-M".
  • CURLOPT_POSTFIELDS : Строка, содержащая данные для HTTP POST запроса.
  • CURLOPT_REFERER : Задает значение HTTP заголовка "Referer: ".
  • CURLOPT_USERAGENT : Задает значение HTTP заголовка "User-Agent: ".
  • CURLOPT_FTPPORT : Задает значение, которое будет использоваться для определения IP адреса для команды "PORT" протокола ftp. Команда "PORT" сообщает серверу, с каким IP адресом он должен устанавливать соединение. Это может быть IP адрес, имя хоста, имя сетевого интерфейса (под Unix), или просто '-' для использования IP адреса по умолчанию.
  • CURLOPT_COOKIE : Содержимое заголовка "Cookie: ", который будет отправлен с HTTP запросом.
  • CURLOPT_SSLCERT : Имя файла с сертификатом в формате PEM.
  • CURLOPT_SSLCERTPASSWD : Пароль к файлу сертификата, заданному параметром CURLOPT_SSLCERT .
  • CURLOPT_COOKIEFILE : Имя файла, содержащего данные cookie. Данные могут быть либо в формате Netscape, либо просто HTTP-заголовки.
  • CURLOPT_CUSTOMREQUEST : Задает специальный метод, который будет использован в HTTP запросе вместоGET или HEAD. Это используется для отправке запросов DELETE или других, редко используемых. Допустимыми зачениями являются GET, POST, и т.д; не передавайте полный HTTP запрос в этом параметре. Например, 'GET /index.html HTTP/1.0\r\n\r\n' недопустимо.

    Замечание: Перед использованием этого параметра убедитесь, что сервер, к которому вы обращаетесь, поддерживает требуемый метод.

  • CURLOPT_PROXY : Имя HTTP прокси, через который будут направляться запросы.

  • CURLOPT_INTERFACE : Имя используемого сетевого интерфейса. Может быть именем интерфейса, IP адресом или именем хоста.

  • CURLOPT_KRB4LEVEL : Уровень безопасности KRB4 (Kerberos 4). Допустимы следующие значения (в порядке возрастания безопасности) : 'clear', 'safe', 'confidential', 'private'. Если переданное значение не входит в этот список, используется 'private'. Установка этого параметра в NULL, запрещает безопасность KRB4 . В настоящее время безопасность KRB4 поддерживается только для протокола FTP.

  • CURLOPT_HTTPHEADER : Массив с HTTP заголовками.

  • CURLOPT_QUOTE : Массив с FTP командами, которые будут выполнены перед выполнением основного запроса.

  • CURLOPT_POSTQUOTE : Массив с FTP командами, которые будут выполнены после выполнения основного запроса.

Для перечисленных ниже параметров, value должен быть дескриптором файла, возвращенным функцией fopen():

  • CURLOPT_FILE : Файл, в который будет выведен результат операции. По умолчанию STDOUT.
  • CURLOPT_INFILE : Файл, содержащий данные для передачи.
  • CURLOPT_WRITEHEADER : Файл, в который будут выведены полученные заголовки.
  • CURLOPT_STDERR : Файл, в который будут выводиться сообщения об ошибках. По умолчанию STDERR.

Пример #1 Инициализация сеанса CURL и загрузка web-страницы

<?php
// инициализация сеанса
$ch curl_init();

// установка URL и других необходимых параметров
curl_setopt($chCURLOPT_URL"http://www.example.com/");
curl_setopt($chCURLOPT_HEADER0);

// загрузка страницы и выдача её браузеру
curl_exec($ch);

// завершение сеанса и освобождение ресурсов
curl_close($ch);
?>






  Copyright Apache.ru © 1999-2017, All Rights Reserved Разработка сайта: Inside.ru  
  РЕКЛАМА НА САЙТЕ: |