curl_setopt
Задаёт настройку запроса cURL.
Синтаксис
curl_setopt(CurlHandle $handle, int $option, mixed $value): boolПараметры
| Параметр | Тип | Описание |
|---|---|---|
| $handle | CurlHandle | Запрос, созданный `curl_init()`. |
| $option | int | Настройка — константа `CURLOPT_…`. |
| $value | mixed | Значение настройки. |
Возвращаемое значение
bool`true` при успехе.
Примеры
Отправка JSON методом POST:
<?php
// create-order.php
$curl = curl_init('https://api.example.com/orders');
curl_setopt_array($curl, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 5,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => json_encode(['product_id' => 42]),
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
]);
$response = curl_exec($curl);Примечания
Несколько настроек удобнее задать одним вызовом curl_setopt_array(). Всегда указывайте CURLOPT_TIMEOUT.
См. также
- curl_init — Создаёт запрос cURL.
- curl_exec — Выполняет запрос cURL.
- http_build_query — Собирает из массива строку параметров для адреса.
Вопросы и ответы по теме
В учебнике
- Запросы к другим сайтам — Как из PHP обратиться к чужому API — file_get_contents, расширение cURL, отправка JSON, заголовки, код ответа и обработка ошибок.