라이브러리
[PHP] curl_setopt_array - cURL 전송에 대한 여러 옵션 설정
Curl_setopt_array() 함수
Curl_setopt_array() 함수는 PHP에서 HTTP 요청을 보내기 위해 사용하는 함수입니다. 이 함수는 이전 버전의 PHP에서 사용하던 Curl_setopt() 함수를 대체하기 위해 만들어졌습니다. Curl_setopt_array() 함수는 여러 옵션을 한 번에 설정할 수 있기 때문에 더 편리하고 효율적입니다.
Curl_setopt_array() 함수의 매개변수
Curl_setopt_array() 함수의 매개변수는 다음과 같습니다.
- `$ch`: curl_init() 함수를 사용하여 생성한 curl 핸들입니다.
- `$options`: 설정할 옵션을 포함하는 배열입니다.
Curl_setopt_array() 함수의 옵션
Curl_setopt_array() 함수의 옵션은 다음과 같습니다.
- `CURLOPT_URL`: 요청할 URL을 설정합니다.
- `CURLOPT_RETURNTRANSFER`: 요청 결과를 문자열로 반환할지 여부를 설정합니다. 기본값은 false입니다.
- `CURLOPT_HEADER`: 요청 헤더를 포함할지 여부를 설정합니다. 기본값은 false입니다.
- `CURLOPT_RETURNTRANSFER`: 요청 결과를 문자열로 반환할지 여부를 설정합니다. 기본값은 false입니다.
- `CURLOPT_POST`: POST 요청을 보내는지 여부를 설정합니다. 기본값은 false입니다.
- `CURLOPT_POSTFIELDS`: POST 요청에 포함할 데이터를 설정합니다.
- `CURLOPT_HTTPHEADER`: 요청 헤더를 설정합니다.
- `CURLOPT_TIMEOUT`: 요청 시간을 설정합니다.
- `CURLOPT_TIMEOUT_MS`: 요청 시간을 설정합니다. (PHP 5.5.0 이상)
- `CURLOPT_POSTFIELDS`: POST 요청에 포함할 데이터를 설정합니다.
- `CURLOPT_RETURNTRANSFER`: 요청 결과를 문자열로 반환할지 여부를 설정합니다. 기본값은 false입니다.
예제
다음 예제는 Curl_setopt_array() 함수를 사용하여 GET 요청을 보내는 방법을 보여줍니다.
#hostingforum.kr
php
<?php
$url = 'https://example.com/api/data';
$ch = curl_init($url);
curl_setopt_array($ch, array(
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HEADER => false,
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'Authorization: Bearer YOUR_API_KEY'
)
));
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
이 예제에서는 `curl_setopt_array()` 함수를 사용하여 GET 요청을 보내고, 요청 결과를 문자열로 반환합니다. 또한 요청 헤더를 설정하고, API 키를 포함합니다.
POST 요청 예제
다음 예제는 Curl_setopt_array() 함수를 사용하여 POST 요청을 보내는 방법을 보여줍니다.
#hostingforum.kr
php
<?php
$url = 'https://example.com/api/data';
$data = array(
'name' => 'John Doe',
'age' => 30
);
$ch = curl_init($url);
curl_setopt_array($ch, array(
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => json_encode($data),
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
)
));
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
이 예제에서는 `curl_setopt_array()` 함수를 사용하여 POST 요청을 보내고, 요청 데이터를 JSON 형식으로 설정합니다. 또한 요청 헤더를 설정합니다.
에러 처리 예제
다음 예제는 Curl_setopt_array() 함수를 사용하여 GET 요청을 보내는 방법과 에러 처리 방법을 보여줍니다.
#hostingforum.kr
php
<?php
$url = 'https://example.com/api/data';
$ch = curl_init($url);
curl_setopt_array($ch, array(
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HEADER => false
));
try {
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($httpCode == 200) {
echo $response;
} else {
throw new Exception('HTTP Error: ' . $httpCode);
}
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
?>
이 예제에서는 `curl_setopt_array()` 함수를 사용하여 GET 요청을 보내고, 요청 결과를 문자열로 반환합니다. 또한 HTTP 코드를 확인하고, 에러가 발생한 경우 예외를 발생시킵니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.