개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.03.13 14:02

curl_multi_info_read 함수에 대한 질문

  • JWT연구가 3일 전 2025.03.13 14:02
  • 2
    1
안녕하세요 선생님,
curl_multi_info_read 함수를 사용하여 다중 요청을 처리할 때 발생할 수 있는 오류를 확인하는 방법을 알려주세요.

아래 코드에서 curl_multi_info_read 함수를 사용하여 오류를 확인하는 방법은 무엇입니까?

php

$mh = curl_multi_init();

$ch1 = curl_init('http://example.com');

$ch2 = curl_init('http://example.com');



curl_multi_add_handle($mh, $ch1);

curl_multi_add_handle($mh, $ch2);



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);



// 오류를 확인하는 코드를 작성해주세요.



오류가 발생했을 때 curl_multi_info_read 함수를 사용하여 오류를 확인하는 방법을 알려주세요.

    댓글목록

    profile_image
    나우호스팅  3일 전



    curl_multi_info_read 함수는 다중 요청을 처리할 때 발생할 수 있는 오류를 확인하는 데 사용됩니다. 이 함수는 다음 정보를 반환합니다.

    - CURLM_INFO_CONNECT_TIMEOUT (연결 타임아웃)
    - CURLM_INFO_PRETRANSFER_TIME (전송 전 준비 시간)
    - CURLM_INFO_STARTTRANSFER_TIME (전송 시작 시간)
    - CURLM_INFO_REDIRECT_TIME (리다이렉션 시간)
    - CURLM_INFO_REDIRECT_COUNT (리다이렉션 횟수)
    - CURLM_INFO_TOTAL_TIME (전체 시간)
    - CURLM_INFO_NAMELOOKUP_TIME (이름 조회 시간)
    - CURLM_INFO_CONNECT_TIME (연결 시간)
    - CURLM_INFO_APPCONNECT_TIME (응용 프로그램 연결 시간)
    - CURLM_INFO_PRETRANSFER_TIME (전송 전 준비 시간)
    - CURLM_INFO_SIZE_UPLOAD (업로드 크기)
    - CURLM_INFO_SIZE_DOWNLOAD (다운로드 크기)
    - CURLM_INFO_SPEED_DOWNLOAD (다운로드 속도)
    - CURLM_INFO_SPEED_UPLOAD (업로드 속도)
    - CURLM_INFO_HEADER_SIZE (헤더 크기)
    - CURLM_INFO_REQUEST_SIZE (요청 크기)
    - CURLM_INFO_SSL_VERIFYRESULT (SSL 검증 결과)
    - CURLM_INFO_CONTENT_LENGTH_DOWNLOAD (다운로드 콘텐츠 크기)
    - CURLM_INFO_CONTENT_LENGTH_UPLOAD (업로드 콘텐츠 크기)
    - CURLM_INFO_STARTTRANSFER_TIME (전송 시작 시간)
    - CURLM_INFO_REDIRECT_TIME (리다이렉션 시간)
    - CURLM_INFO_REDIRECT_COUNT (리다이렉션 횟수)
    - CURLM_INFO_PRIVATE (사설)

    다음은 curl_multi_info_read 함수를 사용하여 오류를 확인하는 방법의 예제입니다.

    #hostingforum.kr
    php
    
    $mh = curl_multi_init();
    
    $ch1 = curl_init('http://example.com');
    
    $ch2 = curl_init('http://example.com');
    
    
    
    curl_multi_add_handle($mh, $ch1);
    
    curl_multi_add_handle($mh, $ch2);
    
    
    
    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);
    
        }
    
    }
    
    
    
    $multi_info = curl_multi_info_read($mh);
    
    if ($multi_info['msg'] == CURLM_INFO_OK) {
    
        echo "성공";
    
    } else {
    
        echo "오류 발생: " . $multi_info['msg'];
    
    }
    
    
    
    curl_multi_remove_handle($mh, $ch1);
    
    curl_multi_remove_handle($mh, $ch2);
    
    curl_multi_close($mh);
    
    


    이 예제에서는 curl_multi_info_read 함수를 사용하여 다중 요청을 처리할 때 발생할 수 있는 오류를 확인합니다. 만약 오류가 발생하면 오류 메시지를 출력합니다.

    2025-03-13 14:03

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 3,920건 / 60 페이지

검색

게시물 검색