curl_setopt — Define uma opção para uma chamada CURL Descrição
bool curl_setopt (int ch, opção de string, valor misto)
A função curl_setopt() definirá opções para uma sessão CURL. O parâmetro opção é a configuração desejada e valor é o valor fornecido por esta opção.
Os valores das opções a seguir serão usados como inteiros longos (especificados no parâmetro option):
*CURLOPT_INFILESIZE: Quando você carrega um arquivo para o site remoto, esta opção informa ao PHP o tamanho do arquivo que você carrega.
*CURLOPT_VERBOSE: Se desejar que o CURL relate todos os eventos inesperados, defina esta opção com um valor diferente de zero.
*CURLOPT_HEADER: Se desejar incluir um cabeçalho na saída, defina esta opção com um valor diferente de zero.
*CURLOPT_NOPROGRESS: Se você não deseja que o PHP exiba uma barra de progresso para transferências CURL, defina esta opção com um valor diferente de zero.
Nota: O PHP define automaticamente esta opção para um valor diferente de zero, você só deve alterar esta opção para fins de depuração.
*CURLOPT_NOBODY: Se você não deseja incluir a parte do corpo na saída, defina esta opção com um valor diferente de zero.
*CURLOPT_FAILONERROR: Se você deseja que o PHP não exiba um erro (o código HTTP retorna maior ou igual a 300) quando ocorrer um erro, defina esta opção com um valor diferente de zero. O comportamento padrão é retornar uma página normal e ignorar o código.
*CURLOPT_UPLOAD: Se você deseja que o PHP se prepare para o upload, defina esta opção com um valor diferente de zero.
*CURLOPT_POST: Se você deseja que o PHP faça um HTTP POST regular, defina esta opção com um valor diferente de zero. Este POST é do tipo application/x-www-from-urlencoded comum, que é usado principalmente por formulários HTML.
*CURLOPT_FTPLISTONLY: Defina esta opção com um valor diferente de zero e o PHP listará os nomes dos diretórios para FTP.
*CURLOPT_FTPAPPEND: Defina esta opção com um valor diferente de zero e o PHP aplicará o arquivo remoto em vez de sobrescrevê-lo.
*CURLOPT_NETRC: Defina esta opção com um valor diferente de zero e o PHP procurará em seu arquivo ~./netrc o nome de usuário e a senha do site remoto ao qual você deseja se conectar.
*CURLOPT_FOLLOWLOCATION: Defina esta opção para um cabeçalho diferente de zero (como "Location: ") e o servidor irá enviá-lo como parte do cabeçalho HTTP (observe que isso é recursivo, o PHP enviará um cabeçalho como "Location: ").
*CURLOPT_PUT: Defina esta opção com um valor diferente de zero para fazer upload de um arquivo usando HTTP. Para fazer upload deste arquivo as opções CURLOPT_INFILE e CURLOPT_INFILESIZE devem ser configuradas.
*CURLOPT_MUTE: Defina esta opção com um valor diferente de zero e o PHP ficará completamente silencioso para a função CURL.
*CURLOPT_TIMEOUT: Defina um número inteiro longo como o número máximo de segundos.
*CURLOPT_LOW_SPEED_LIMIT: Defina um número inteiro longo para controlar quantos bytes são transmitidos.
*CURLOPT_LOW_SPEED_TIME: Defina um número inteiro longo para controlar quantos segundos transmitir o número de bytes especificado por CURLOPT_LOW_SPEED_LIMIT.
*CURLOPT_RESUME_FROM: Passe um parâmetro longo contendo o endereço de deslocamento de bytes (o formulário inicial para o qual deseja transferir).
*CURLOPT_SSLVERSION: Passe um parâmetro longo contendo a versão do SSL. Por padrão, o PHP fará seu próprio trabalho duro, para maior segurança você terá que configurá-lo manualmente.
*CURLOPT_TIMECONDITION: Passe um parâmetro longo para especificar como tratar o parâmetro CURLOPT_TIMEVALUE. Você pode configurar esse parâmetro como TIMECOND_IFMODSINCE ou TIMECOND_ISUNMODSINCE. Isso é apenas para HTTP.
*CURLOPT_TIMEVALUE: Passa alguns segundos de 1970-1-1 até o presente. Este tempo será utilizado como valor especificado pela opção CURLOPT_TIMEVALUE, ou pelo padrão TIMECOND_IFMODSINCE.
Os valores das seguintes opções serão tratados como strings:
*CURLOPT_URL: Este é o endereço URL que você deseja recuperar usando PHP. Você também pode definir esta opção durante a inicialização com a função curl_init().
*CURLOPT_USERPWD: Passe uma string no formato [nomedeusuário]:[senha] e use PHP para conectar.
*CURLOPT_PROXYUSERPWD: Passe uma string no formato [nomedeusuário]:[senha] para conectar ao proxy HTTP.
*CURLOPT_RANGE: Passe um intervalo que você deseja especificar. Deve estar no formato "XY", excluindo X ou Y. As transferências HTTP também suportam vários intervalos, separados por vírgulas (XY, NM).
*CURLOPT_POSTFIELDS: Passe uma string contendo todos os dados como uma operação HTTP "POST".
*CURLOPT_REFERER: Uma string contendo um cabeçalho "referer" na solicitação HTTP.
*CURLOPT_USERAGENT: Uma string contendo um cabeçalho "user-agent" na solicitação HTTP.
*CURLOPT_FTPPORT: Passe um endereço IP contendo o endereço IP utilizado pelo comando ftp "POST". Este comando POST informa ao servidor remoto para se conectar ao endereço IP que especificamos. Essa string pode ser um endereço IP, um nome de host, um nome de interface de rede (no UNIX) ou '-' (use o endereço IP padrão do sistema).
*CURLOPT_COOKIE: Passa um cabeçalho contendo um cookie HTTP para a conexão.
*CURLOPT_SSLCERT: Passe uma string contendo o certificado em formato PEM.
*CURLOPT_SSLCERTPASSWD: Passe uma senha contendo a senha necessária para utilizar o certificado CURLOPT_SSLCERT.
*CURLOPT_COOKIEFILE: Passe uma string contendo o nome do arquivo que contém os dados do cookie. Este arquivo cookie pode estar no formato Netscape ou pode ser uma pilha de cabeçalhos estilo HTTP armazenados no arquivo.
*CURLOPT_CUSTOMREQUEST: Ao fazer uma requisição HTTP, passe um caractere a ser utilizado por GET ou HEAD. Passe uma string a ser usada em vez de GET ou HEAD ao fazer uma solicitação HTTP. Isso é útil para fazer outra solicitação HTTP mais obscura.
Nota: Certifique-se de que seu servidor suporte Order para não fazer isso ainda.
As opções a seguir requerem uma descrição do arquivo (obtida usando a função fopen()):
*CURLOPT_FILE: Este arquivo será o arquivo de saída no qual você colocará a transferência. O padrão é STDOUT.
*CURLOPT_INFILE: Este arquivo é o arquivo de entrada que você enviou.
*CURLOPT_WRITEHEADER: Este arquivo contém a parte do cabeçalho da sua saída.
*CURLOPT_STDERR: Este arquivo contém erros escritos em vez de stderr.