Conversor de Curl para PHP

Converta comandos curl para código PHP - Gere código PHP cURL pronto para uso para requisições de API

Aviso de Privacidade: Esta ferramenta profissional fornece conversão segura para código PHP com proteção de privacidade de nível empresarial. Não armazenamos nenhum dado que você envie, garantindo confidencialidade completa para seu trabalho de desenvolvimento de API.

Gerador de Código PHP cURL

 "https://api.example.com/data",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => json_encode(["name" => "test"]),
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}

Comandos curl Comuns para Teste de API PHP

Aqui estão alguns comandos curl comuns que você pode converter para código PHP:

Exemplos PHP cURL

A extensão cURL do PHP fornece uma maneira poderosa de fazer requisições HTTP. Aqui estão alguns padrões PHP cURL comuns:

Upload de Arquivo com PHP cURL

 "https://api.example.com/upload",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => [
    'file' => $cfile
  ],
  CURLOPT_HTTPHEADER => [
    "Authorization: Bearer YOUR_TOKEN_HERE"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}

PHP cURL com Timeout e Tratamento de Erros

 "https://api.example.com/data",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 5,  // 5 seconds timeout
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);

$response = curl_exec($curl);
$err = curl_error($curl);
$httpCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);

curl_close($curl);

if ($err) {
echo "cURL Error: " . $err;
} else {
if ($httpCode >= 400) {
echo "HTTP Error: " . $httpCode . "\n";
echo "Response: " . $response;
} else {
$data = json_decode($response, true);
if (json_last_error() === JSON_ERROR_NONE) {
// Process JSON data
print_r($data);
} else {
echo "JSON parsing error: " . json_last_error_msg();
echo "Raw response: " . $response;
}
}
}

Como Usar o Conversor PHP cURL

1. Uso Básico

Copie seu comando curl → Cole na caixa de entrada → Obtenha código PHP cURL convertido

2. Recursos PHP cURL

  • HTTP methods (GET, POST, PUT, DELETE, etc.)
  • Request headers in PHP format
  • JSON and form data handling
  • Basic and token authentication
  • SSL verification options
  • Cookie handling with PHP cURL

3. Uso Avançado de PHP cURL

 true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOUR_TOKEN_HERE",
"Content-Type: application/json",
"Accept: application/json"
],
];

// First request
curl_setopt_array($curl, $options + [
CURLOPT_URL => "https://api.example.com/users",
CURLOPT_CUSTOMREQUEST => "GET",
]);

$response1 = curl_exec($curl);
$err1 = curl_error($curl);

// Second request with the same session
curl_setopt_array($curl, $options + [
CURLOPT_URL => "https://api.example.com/products",
CURLOPT_CUSTOMREQUEST => "GET",
]);

$response2 = curl_exec($curl);
$err2 = curl_error($curl);

curl_close($curl);

// Process responses
$users = json_decode($response1, true);
$products = json_decode($response2, true);

4. Convertendo Opções curl para PHP

Nossa ferramenta lida com estas opções curl comuns e as converte para código PHP cURL apropriado:

  • -X, --request: Sets the HTTP method (GET, POST, PUT, etc.)
  • -H, --header: Adds HTTP headers to the request
  • -d, --data: Sends data in the request body
  • --data-binary: Sends binary data in the request body
  • -u, --user: Adds basic authentication
  • -k, --insecure: Disables SSL certificate verification
  • --connect-timeout: Sets connection timeout

Perguntas Frequentes sobre PHP cURL

P: Qual versão PHP é necessária para o código gerado?

R: O código PHP cURL gerado é compatível com PHP 5.5 e superior. Para versões PHP mais antigas, pequenos ajustes podem ser necessários, especialmente para a classe CURLFile usada em uploads de arquivos.

P: O código PHP inclui verificação de erros?

R: Sim, o código gerado inclui tratamento básico de erros para erros cURL. Para código de produção, você pode querer adicionar tratamento de erros mais abrangente específico para as necessidades da sua aplicação.

P: Como posso processar a resposta em PHP?

R: Para respostas JSON, use json_decode() para analisar a resposta em um array ou objeto PHP. Para outros formatos, você pode processar a string de resposta bruta conforme necessário.

P: Preciso instalar alguma extensão para usar o código gerado?

R: Sim, você precisa da extensão cURL habilitada na sua instalação PHP. A maioria das instalações PHP modernas tem cURL habilitado por padrão. Você pode verificar com php -m | grep curl no seu terminal.

P: Como converter um comando curl com upload de arquivo para PHP?

R: Para uploads de arquivo em PHP, você precisará usar a classe CURLFile. Nosso conversor lida com comandos curl com opções -F ou --form e gera o código PHP apropriado usando CURLFile.

P: Como lidar com cookies em PHP cURL?

R: A extensão cURL do PHP fornece opções para manipulação de cookies. Quando você converte comandos curl que incluem manipulação de cookies (usando -b ou --cookie), nossa ferramenta gera código PHP que gerencia cookies adequadamente usando opções CURLOPT_COOKIE ou CURLOPT_COOKIEFILE/CURLOPT_COOKIEJAR.

P: Qual é a diferença entre usar curl e PHP cURL para teste de API?

R: Enquanto o curl de linha de comando é excelente para teste rápido de API, o PHP cURL permite que você integre requisições HTTP diretamente em suas aplicações PHP. Converter curl para PHP ajuda a preencher a lacuna entre teste e implementação no desenvolvimento PHP.

Referência de Comandos Curl para Testes de API PHP

Entender comandos curl é essencial para teste eficaz de API com PHP. Aqui está uma referência rápida de opções curl comuns que nosso conversor suporta:

Sintaxe curl Básica

curl [options] [URL]

Opções curl Comuns

Convertendo Comandos curl Complexos

Nosso conversor PHP lida com comandos curl complexos incluindo múltiplos cabeçalhos, autenticação, payloads de dados e várias opções. Simplesmente cole seu comando curl e obtenha código PHP limpo e moderno usando a extensão cURL.

Melhores Práticas PHP cURL

Ao trabalhar com PHP cURL, siga estas melhores práticas para interações de API eficientes e seguras:

1. Sempre Feche Recursos cURL



2. Use curl_setopt_array para Múltiplas Opções

 "https://api.example.com/data",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 30,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer token123",
"Accept: application/json"
],
]);

$response = curl_exec($curl);
curl_close($curl);

3. Implemente Tratamento de Erros Abrangente

 "https://api.example.com/data",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 30,
CURLOPT_CUSTOMREQUEST => "GET",
]);

$response = curl_exec($curl);
$errno = curl_errno($curl);
$httpCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);

if ($errno) {
// Handle cURL errors
switch ($errno) {
case CURLE_OPERATION_TIMEDOUT:
echo "Request timed out";
break;
case CURLE_COULDNT_CONNECT:
echo "Could not connect to server";
break;
default:
echo "cURL error ({$errno}): " . curl_strerror($errno);
}
} else if ($httpCode >= 400) {
// Handle HTTP errors
echo "HTTP error: {$httpCode}";
} else {
// Process successful response
$data = json_decode($response, true);
// Continue processing...
}