Como enviar corretamente uma requisição POST via cURL em PHP? Exemplo completo com tratamento de erros
Olá a todos! Sou iniciante em PHP e estou tentando entender como enviar requisições POST via cURL. Tenho um script simples que deve enviar dados para uma API externa, mas constantemente recebo erros ou uma resposta vazia.
Aqui está meu código atual:
```php
'Ivan',
'email' => 'ivan@example.com'
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
```
O problema é que:
1. Às vezes recebo uma resposta vazia
2. Não há tratamento de erros — se a requisição falhar, não fico sabendo
3. Não entendo como passar JSON corretamente em vez de dados comuns
4. Em alguns servidores, a requisição simplesmente trava
Já tentei várias opções, mas todos os exemplos que encontro são muito simples ou muito complexos para meu nível. Vocês podem mostrar um exemplo funcional com um tratamento adequado