English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP 기초 강의

PHP 고급 강의

PHP & MySQL

PHP 참조 매뉴얼

PHP curl_multi_exec() 함수 사용법 및 예제

PHP CURL 참조 매뉴얼

(PHP 5)

curl_multi_exec — 현재 CURL 핸들의 서브 커넥션을 실행

설명

int curl_multi_exec ( resource $mh , int &$still_running )

스택에 있는 각 핸들을 처리합니다. 이 핸들이 데이터를 읽거나 쓰기가 필요할 때마다 이 메서드를 호출할 수 있습니다.

매개변수

mh

curl_multi_init()로 반환된 CURL 다중 핸들.

still_running

작업이 여전히 실행 중인지 여부를 판단하는 인덱스의 참조

반환 값

CURL 예약된 상수 중 하나로 정의된 CURL 코드.

주의:이 함수는 전체 배치 스택과 관련된 오류만 반환합니다. CURLM_OK이 반환되더라도 단일 전송이 문제가 있을 수 있습니다.

온라인 예제

이 예제는 다음과 같이 생성합니다 2 CURL 핸들을 배치 핸들에 추가하고, 그들을 병행적으로 실행합니다.

<?php
// CURL 자원 쌍 생성
$ch1 = curl_init();
$ch2 = curl_init();
// URL과 관련된 옵션 설정
curl_setopt($ch1, CURLOPT_URL, "http://lxr.php.net/");
curl_setopt($ch1, CURLOPT_HEADER, 0);
curl_setopt($ch2, CURLOPT_URL, "http://www.php.net/");
curl_setopt($ch2, CURLOPT_HEADER, 0);
// 배치 CURL 핸들 생성
$mh = curl_multi_init();
// 추가2핸들
curl_multi_add_handle($mh,$ch1);
curl_multi_add_handle($mh,$ch2);
$active = null;
// 배치 핸들 실행
do {
    $mrc = curl_multi_exec($mh, $active);
} while ($mrc == CURLM_CALL_MULTI_PERFORM);
while ($active && $mrc == CURLM_OK) {
    if (curl_multi_select($mh) != -1) {
        do {
            $mrc = curl_multi_exec($mh, $active);
        } while ($mrc == CURLM_CALL_MULTI_PERFORM);
    }
}
// 모든 핸들을 닫기
curl_multi_remove_handle($mh, $ch1);
curl_multi_remove_handle($mh, $ch2);
curl_multi_close($mh);
?>

PHP CURL 참조 매뉴얼