English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
(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); ?>