Converter curl para PHP

O curl2code converte comandos curl para código PHP utilizando a extensão cURL ou a biblioteca Guzzle. A conversão é executada no seu navegador através de WebAssembly para total privacidade. Para linguagens de lado do servidor semelhantes, consulte o nosso conversor de curl para Python ou curl para Ruby. Abaixo encontram-se exemplos práticos de PHP.

Como copiar o curl do seu navegador

  1. 1

    Abrir as DevTools

    Prima F12 ou Ctrl+Shift+I para abrir as ferramentas de programador do seu navegador.

  2. 2

    Ir para o separador Network

    Clique no separador Network e realize a ação que despoleta o pedido HTTP.

  3. 3

    Copiar como cURL

    Clique com o botão direito no pedido → CopyCopy as cURL. Depois cole-o acima.

Perguntas Frequentes

O que é o cURL do PHP?

A extensão curl do PHP é um wrapper em torno da biblioteca C libcurl, fornecendo capacidades poderosas de cliente HTTP. Suporta virtualmente todos os protocolos e funcionalidades que o próprio curl suporta. Inicialize com curl_init(), defina opções com curl_setopt() e execute com curl_exec(). O curl2code também suporta Guzzle e Requests como alternativas.

PHP cURL vs Guzzle vs Requests — qual devo usar?

O PHP cURL é de baixo nível e integrado — não é necessário o Composer. O Guzzle é o cliente HTTP mais popular para PHP com suporte para PSR-7, middleware e pedidos assíncronos. O Requests oferece uma API simples para tarefas rápidas. Use o Guzzle para projetos modernos, PHP cURL para configurações mínimas. Para opções semelhantes noutras linguagens, consulte curl para Python.

Como gerir a autenticação em PHP?

Com cURL: curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer token']). Para autenticação Basic: curl_setopt($ch, CURLOPT_USERPWD, 'user:pass'). O Guzzle usa 'auth' => ['user', 'pass'] ou 'headers' => ['Authorization' => 'Bearer token']. O curl2code gere as flags -u e Bearer automaticamente.

Como enviar dados de formulário multipart em PHP?

Com cURL: passe um array para CURLOPT_POSTFIELDS contendo new CURLFile('path') para ficheiros. O Guzzle usa a opção 'multipart' com arrays de campos/ficheiros. O curl2code converte as flags -F para o formato correto para cada variante de biblioteca PHP.

Como gerir erros HTTP em PHP?

Com cURL: verifique curl_errno($ch) para erros de transporte e analise o estado da resposta manualmente. O Guzzle lança RequestException em falhas — capture ClientException (4xx), ServerException (5xx) e ConnectException (rede). Chame sempre curl_close($ch) para libertar recursos.

Como fazer pedidos HTTP assíncronos em PHP?

O Guzzle suporta assincronismo através de $client->requestAsync('GET', $url) devolvendo uma Promise. Use Promise\Utils::all() para pedidos concorrentes. Com cURL, use as funções curl_multi_* para execução paralela. Para PHP verdadeiramente assíncrono, considere as frameworks ReactPHP ou Amp com os seus clientes HTTP.

Como definir timeouts em PHP?

Com cURL: CURLOPT_CONNECTTIMEOUT para a ligação e CURLOPT_TIMEOUT para o tempo total do pedido. O Guzzle aceita 'connect_timeout' e 'timeout' em segundos. Estes mapeiam diretamente para as opções --connect-timeout e --max-time do curl.

Como usar um proxy em PHP?

Com cURL: curl_setopt($ch, CURLOPT_PROXY, 'http://proxy:8080'). Para SOCKS5: adicione CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5. O Guzzle usa a opção 'proxy' => 'http://proxy:8080'. O curl2code converte as flags -x e --proxy para o código PHP correspondente.

Como enviar um pedido POST com um corpo JSON em PHP?

Converta um comando curl POST como curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL para PHP usando o curl2code. O código gerado utiliza curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data)). O curl2code deteta automaticamente as flags -d/--data com conteúdo JSON e define o cabeçalho Content-Type apropriado no código cURL.

Como adicionar autorização com token Bearer em PHP?

Passe curl -H "Authorization: Bearer YOUR_TOKEN" URL para o curl2code e este gera código cURL com o cabeçalho de autenticação: curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer TOKEN']). O curl2code deteta tokens Bearer tanto de flags -H "Authorization: Bearer ..." como de --oauth2-bearer. Para Basic auth, utilize -u user:pass.

Como definir o cabeçalho Content-Type em PHP?

O curl2code converte curl -H "Content-Type: application/json" URL para código cURL com o cabeçalho correto: curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']). Para dados -d, o curl assume por defeito application/x-www-form-urlencoded; para envios de formulários -F, utiliza multipart/form-data. O curl2code mapeia cada um para a API cURL correta.

Extensão PHP cURL vs Guzzle — qual devo utilizar?

A extensão PHP cURL (funções curl_*) está integrada no PHP e não requer dependências extra — ideal para pedidos simples ou quando se pretende o mínimo de sobrecarga. O Guzzle é um cliente HTTP completo com middleware, pedidos assíncronos, suporte PSR-7/PSR-18 e tentativas automáticas. Utilize cURL para scripts leves, Guzzle para aplicações complexas. O curl2code gera código para ambos — selecione a sua variante preferida no menu de linguagens.

Links Úteis

Guias do curl

Converter curl para Outras Linguagens