PHP의 curl_setopt 기능
PHP의 curl_setopt 기능
(PHP 4> = 4.0.2, PHP 5)
curl_setopt은 - 컬 전송 옵션을 설정합니다.
설명
bool curl_setopt ( resource $ch , int $option , mixed $value )
주어진 컬 세션 핸들 옵션을 설정합니다.
매개 변수
채널
curl_init ()로 컬 핸들을 반환합니다.
선택권
CURLOPT_XXX 옵션을 설정해야합니다.
값
옵션에 대한 옵션의 값을 설정합니다.
이러한 옵션에 다음과 같은 선택적 매개 변수의 값은 bool 형식의 값으로 설정해야합니다 :
옵션 | 옵션 값 값 | 말 |
---|---|---|
CURLOPT_AUTOREFERER | 위치에 따라시 : 정보 : 리퍼러에서 자동으로 설정 헤더를 리디렉션합니다. | |
CURLOPT_BINARYTRANSFER | 활성화 된 경우 CURLOPT_RETURNTRANSFER는 기본 (원시) 출력을 반환합니다. | |
CURLOPT_COOKIESESSION | 활성화 컬은 세션 쿠키를 통과 할 때, 기본 상태 컬 서버에 쿠키를 모두 반환합니다, 다른 쿠키를 무시합니다. 세션 쿠키는 그 쿠키를 존재 서버 측 세션의 유효성을 결정하기 위해 사용된다. | |
CURLOPT_CRLF | 당신은 캐리지 리턴으로 유닉스 줄 바꿈을 사용합니다. | |
CURLOPT_DNS_USE_GLOBAL_CACHE | 글로벌 DNS 캐시를 사용 활성화,이 스레드 안전 및 기본 수 있습니다. | |
CURLOPT_FAILONERROR | 디스플레이 HTTP 상태 코드, 기본 동작은 400 이하 HTTP 정보의 수를 무시할 수있다. | |
CURLOPT_FILETIME | 이 문서의 원격 정보가 활성화되어 수정하려고합니다. 결과 정보는 () CURLINFO_FILETIME 옵션 기능은 curl_getinfo을 반환합니다. curl_getinfo (). | |
CURLOPT_FOLLOWLOCATION | 서버가 서버가 "위치 :"가능하게 할 것이다 반환하면 다시 서버로 재귀에 헤더를, 당신은 재귀 수를 반환 정의 CURLOPT_MAXREDIRS를 사용할 수 있습니다. | |
CURLOPT_FORBID_REUSE | 상호 작용이 완료된 후 강제 연결 해제 재사용 할 수 없다. | |
CURLOPT_FRESH_CONNECT | 새로운 접속을 얻을 캐시 연결을 대체하도록 강요. | |
CURLOPT_FTP_USE_EPRT | FTP 다운로드를 사용하도록 설정하면, EPRT (또는 LPRT) 명령을 사용합니다. FALSE로 설정하면, EPRT 및 LPRT를 사용하지 않도록 설정 만 PORT 명령을 사용합니다. | |
CURLOPT_FTP_USE_EPSV | 사용하도록 설정하면, 첫 번째 시도의 EPSV 명령 전에 PASV 모드 FTP 전송 프로세스에 대한 응답. FALSE로 설정하면 EPSV 명령을 비활성화합니다. | |
CURLOPT_FTPAPPEND | 대신이 활성화 덮어 쓰기의 추가 쓰기 파일. | |
CURLOPT_FTPASCII | CURLOPT_TRANSFERTEXT 별명. | |
CURLOPT_FTPLISTONLY | 는 FTP 디렉토리 목록 이름 만 사용할 수 있습니다. | |
CURLOPT_HEADER | 당신이 사용하면 메시지 헤더는 데이터 스트림으로 출력됩니다. | |
CURLINFO_HEADER_OUT | 활성화 핸들 요청 문자열을 추적. | PHP 5.1.3부터 사용할 수 있습니다. CURLINFO_ 접두어는 고의적 (의도적)입니다. |
CURLOPT_HTTPGET | GET이 기본이기 때문에 설정은 그래서 수정되는 경우에만 사용, HTTP 메소드가 GET입니다 수있게된다. | |
CURLOPT_HTTPPROXYTUNNEL | HTTP 프록시를 사용하도록 설정을 통해이 전송됩니다. | |
CURLOPT_MUTE | 컬 기능은 모든 활성화 된 기본값을 복원 매개 변수를 수정했습니다. | |
CURLOPT_NETRC | 연결이 설정되면, 사용자 이름 및 암호 정보 액세스 ~ /하면 .netrc 파일은 원격 사이트를 연결한다. | |
CURLOPT_NOBODY | HTML 본문 출력의 일부가 활성화되지 않습니다. | |
CURLOPT_NOPROGRESS | 닫기 컬 전송 진행률 표시 줄을 사용하도록 설정이 기본적으로 활성화되어 있습니다.
| |
CURLOPT_NOSIGNAL | 신호 모두가 PHP 컬에 전달 무시 수행 활성화. 이 옵션은 기본적 때 SAPI 멀티 스레드 전송으로 사용하도록 설정되어 있습니다. | 7.10 컬 추가 할 때. |
CURLOPT_POST | 을 application / x-www-form : 정상적인 POST 요청을 입력 전송을 활성화하면 -urlencoded, 바로 양식 제출 등. | |
CURLOPT_PUT | HTTP 파일을 보낼 수 있도록, 당신은 CURLOPT_INFILE를 설정해야하고 CURLOPT_INFILESIZE 동시에 사용 가능. | |
CURLOPT_RETURNTRANSFER | curl_exec ()는 출력되는 대신에, 파일 스트림의 형태로 얻어진 정보를 반환한다. | |
CURLOPT_SSL_VERIFYPEER | 비활성화 컬이 서버에서 종료됩니다 후 확인합니다. CURLOPT_SSL_VERIFYPEER (기본 2) 활성화, CURLOPT_SSL_VERIFYHOST가 TRUE로 설정해야 할 경우 사용 CURLOPT_CAINFO 옵션 인증서 그렇지 않으면 FALSE로 설정, 옵션 인증서 카탈로그를 CURLOPT_CAPATH. | 7.10 컬 기본의 시작은 TRUE 때문이다. 컬 7.10을 설치 기본 바인딩의 처음부터. |
CURLOPT_TRANSFERTEXT | 사용 FTP 전송을 위해 ASCII 모드를 사용합니다. LDAP의 경우, 일반 텍스트가 아닌 HTML에서 정보를 검색합니다. Windows 시스템의 경우, 시스템은 바이너리 모드로 STDOUT를 설정하지 않습니다. | |
CURLOPT_UNRESTRICTED_AUTH | 헤더 생성 CURLOPT_FOLLOWLOCATION 여러 위치를 사용하여 지속적으로 도메인 네임을 변경 한 경우에도, 사용자 이름 및 암호 정보를 추가. | |
CURLOPT_UPLOAD | 사용하도록 설정하면 파일 업로드를 할 수 있습니다. | |
CURLOPT_VERBOSE | 모든 정보 STDERR에 저장되거나에서 CURLOPT_STDERR 지정을 활성화보고합니다. |
이들 옵션은 다음 옵션 매개 변수의 값은 정수형의 값으로 설정되어야한다 :
옵션 | 옵션 값 값 | 말 |
---|---|---|
CURLOPT_BUFFERSIZE | 각 수집 된 데이터는 캐시 크기로 읽을 수 있지만 각각의 가치가 작성되는 것은 아닙니다. | 그것은 컬 7.10에서 추가되었다. |
CURLOPT_CLOSEPOLICY | CURLCLOSEPOLICY_LEAST_RECENTLY_USED되지 않음, CURLCLOSEPOLICY_OLDEST입니다 다른 세 CURLCLOSEPOLICY이있다, 그러나 컬은 아직 지원되지 않습니다. | |
CURLOPT_CONNECTTIMEOUT | 0으로 설정하면 대기 시간 연결을 시작하기 전에, 다음 무한정 기다립니다. | |
CURLOPT_CONNECTTIMEOUT_MS | 밀리 초 단위로 대기 시간을 연결해보십시오. 0으로 설정하면, 무한정 기다립니다. | CURL 7.16.2이 추가됩니다. PHP 5.2.3부터 사용할 수 있습니다. |
CURLOPT_DNS_CACHE_TIMEOUT | 시간 메모리에 저장된 정보는 DNS 설정 기본값은 120 초이다. | |
CURLOPT_FTPSSLAUTH | FTP 인증 : CURLFTPAUTH_SSL (제 1 SSL을 시도), CURLFTPAUTH_TLS (첫 번째 시도 TLS) 또는 CURLFTPAUTH_DEFAULT은 (컬이 자동으로 결정하자). | CURL 7.12.2이 추가됩니다. |
CURLOPT_HTTP_VERSION | CURL_HTTP_VERSION_NONE (디폴트 값 때문에 사용하는 버전을 스스로 결정할 컬), CURL_HTTP_VERSION_1_0 (HTTP의 의무 사용 / 1.0) 또는 CURL_HTTP_VERSION_1_1 (HTTP의 의무 사용 / 1.1). | |
CURLOPT_INFILESIZE | 바이트 (바이트) 단위의 업로드 파일 크기 제한을 설정합니다. | |
CURLOPT_LOW_SPEED_LIMIT | 전송 속도는 CURLOPT_LOW_SPEED_LIMIT 시간 (바이트 / 초) 미만이면, PHP 기반 CURLOPT_LOW_SPEED_TIME 변속기 때문에 너무 느린이 취소되었는지 여부를 결정한다. | |
CURLOPT_LOW_SPEED_TIME | 전송 속도는 CURLOPT_LOW_SPEED_LIMIT 시간 (바이트 / 초) 미만이면, PHP 기반 CURLOPT_LOW_SPEED_TIME 변속기 때문에 너무 느린이 취소되었는지 여부를 결정한다. | |
CURLOPT_MAXCONNECTS | 최대 연결 수는 연결이 중단되어야하는 결정합니다 CURLOPT_CLOSEPOLICY을 통해 허용합니다. | |
CURLOPT_MAXREDIRS | 이 옵션은 함께 사용되는 최대 HTTP 리디렉션 수, CURLOPT_FOLLOWLOCATION를 지정합니다. | |
CURLOPT_PORT | 연결 포트를 지정하는 데 사용됩니다. (선택 사항) | |
CURLOPT_PROTOCOLS | CURLPROTO_ * 비트 필드는 것을 의미한다. 이 활성화되어있는 경우, 비트 필드 값은 프로토콜이 전송 중에 존재 libcurl에 사용될 수를 정의한다. 이것은 libcurl에서 컴파일시 프로토콜을 지원할 수 있지만 제외 한계 서브 세트를 사용하도록 허용 될 수있다. 기본 libcurl에는 지원되는 프로토콜을 모두 사용합니다. 사용할 수 CURLOPT_REDIR_PROTOCOLS 프로토콜 옵션을 참조하십시오 : CURLPROTO_HTTP, CURLPROTO_HTTPS, CURLPROTO_FTP, CURLPROTO_FTPS , CURLPROTO_SCP, CURLPROTO_SFTP, CURLPROTO_TELNET, CURLPROTO_LDAP, CURLPROTO_LDAPS, CURLPROTO_DICT, CURLPROTO_FILE, CURLPROTO_TFTP, CURLPROTO_ALL | CURL 7.19.4이 추가됩니다. |
CURLOPT_PROTOCOLS | CURLPROTO_ * 비트 필드는 것을 의미한다. 이 활성화되어있는 경우, 비트 필드 값은 프로토콜이 전송 중에 존재 libcurl에 사용될 수를 정의한다. 이것은 libcurl에서 컴파일시 프로토콜을 지원할 수 있지만 제외 한계 서브 세트를 사용하도록 허용 될 수있다. 기본 libcurl에는 지원되는 프로토콜을 모두 사용합니다. 사용할 수 CURLOPT_REDIR_PROTOCOLS 프로토콜 옵션을 참조하십시오 : CURLPROTO_HTTP, CURLPROTO_HTTPS, CURLPROTO_FTP, CURLPROTO_FTPS , CURLPROTO_SCP, CURLPROTO_SFTP, CURLPROTO_TELNET, CURLPROTO_LDAP, CURLPROTO_LDAPS, CURLPROTO_DICT, CURLPROTO_FILE, CURLPROTO_TFTP, CURLPROTO_ALL | CURL 7.19.4이 추가됩니다. |
CURLOPT_PROXYAUTH | HTTP 프록시 인증을 연결. 해당 옵션을 설정 CURLOPT_HTTPAUTH 비트 필드 플래그를 사용합니다. 프록시 인증에만 CURLAUTH_BASIC 및 CURLAUTH_NTLM는 현재 지원. | CURL 7.10.7이 추가됩니다. |
CURLOPT_PROXYPORT | 프록시 서버 포트. 포트는 또한 CURLOPT_PROXY 설정 될 수있다. | |
CURLOPT_PROXYTYPE | 하지 CURLPROXY_HTTP (기본값) CURLPROXY_SOCKS5입니다. | 그것은 컬 7.10에서 추가되었다. |
CURLOPT_REDIR_PROTOCOLS | * 비트 필드 값을 CURLPROTO_. 이 활성화되어있는 경우, 비트 필드 값 리디렉터 스레드 CURLOPT_FOLLOWLOCATION 턴이 사용될 수있는 경우 때 따라야하는 전송 프로토콜을 제한 할 것이다. 이 전송 스레드가 프로토콜의 부분 집합의 기본 libcurl에서이 FILE과 SCP를 제외한 모든 프로토콜을 수 있도록 허용 한계로 리디렉션됩니다. 시험판 버전의이 종류는 7.19.4 무조건는 약간의 차이가있는 모든 지원되는 프로토콜을 따르십시오. 프로토콜 상수 정보, CURLOPT_PROTOCOLS을 참조하시기 바랍니다. | CURL 7.19.4이 추가됩니다. |
CURLOPT_RESUME_FROM | (HTTP의 경우) 전송을 복원 할 때 바이트 오프셋을 전달합니다. | |
CURLOPT_SSL_VERIFYHOST | 일반적인 이름 (일반 이름) 서버 SSL 인증서를 확인 1가 있는지. 역자 주 : 일반적으로 일반 이름 (이름이), 적용 할 것입니다 것은 SSL 인증서 도메인 (도메인) 또는 하위 도메인 (서브 도메인)를 작성하는 것입니다. 2 일반 이름이 있는지 확인하고, 일치하는 경우 호스트를 제공합니다. | |
CURLOPT_SSLVERSION | 는 SSL 버전 (2 또는 3)를 사용합니다. 어떤 경우에는 수동으로 설정해야하지만 기본적으로 PHP는,이 값 자체를 감지합니다. | |
CURLOPT_TIMECONDITION | 당신이 너무 지정된 시간 CURLOPT_TIMEVALUE에서 미래에 편집하는 경우, 수정하지 않을 경우, 페이지에 CURL_TIMECOND_IFMODSINCE 복귀를 사용하고 CURLOPT_HEADER에 해당하는, 그것은, CURLOPT_HEADER 거짓은 다음 CURL_TIMECOND_IFUNMODSINCE를 사용하여 헤더에 "304 수정되지 않음"을 반환, 기본 값 CURL_TIMECOND_IFUNMODSINCE. | |
CURLOPT_TIMEOUT | 실행 컬을 허용하는 최대 시간 (초)을 설정합니다. | |
CURLOPT_TIMEOUT_MS | 설정 컬 (밀리 초)의 최대 수를 실행할 수. | CURL 7.16.2이 추가됩니다. PHP 5.2.3 이후부터 사용할 수 있습니다. |
CURLOPT_TIMEVALUE | CURL_TIMECOND_IFMODSINCE를 사용하여 기본적으로 사용되는 타임 스탬프 CURLOPT_TIMECONDITION 설정. |
이러한 선택적인 매개 변수는 다음 옵션의 가치는 문자열 유형의 값으로 설정되어야한다 :
옵션 | 옵션 값 값 | 말 |
---|---|---|
CURLOPT_CAINFO | 그것은 하나 이상의 인증서 파일명의 확인을 허용하기 위해 사용 된 서버의 복수 보유하고있다. 함께하고 CURLOPT_SSL_VERIFYPEER 사용하는 경우이 매개 변수는 의미가있다. . | |
CURLOPT_CAPATH | CA 인증서 디렉토리의 복수를 보유하고있다. 이 옵션은 CURLOPT_SSL_VERIFYPEER과 함께 사용됩니다. | |
CURLOPT_COOKIE | HTTP 요청 "쿠키"설정 내용의 일부. ( "; 색상 = 과일 = 사과 예를 들어, 세미콜론 뒤에 공백과 세미콜론으로 구분 된 여러 쿠키 빨간색"). | |
CURLOPT_COOKIEFILE | 파일 이름은 쿠키 데이터 포맷 쿠키 파일이 파일에 넷스케이프 방식, 평범한 HTTP 헤더 정보를 포함 할 수있다. | |
CURLOPT_COOKIEJAR | 접속 종료 후 쿠키 파일 정보를 저장한다. | |
CURLOPT_CUSTOMREQUEST | 대신 "GET"또는 HTTP 요청으로 "HEAD"의 사용자 지정 요청 정보를 사용합니다. 이것은 "DELETE"또는 다른 더 애매한 HTTP 요청의 구현입니다. 예 : "GET", "POST"는 등의 유효한 값 "CONNECT" 등등합니다. 즉, 여기에서 전체의 HTTP 요청을 입력하지 않는다. 예를 들어, 입력 "GET /index.html을 HTTP / 1.0 \ 연구 \ n을 \ r에 \ n" 올바르지 않습니다.
| |
CURLOPT_EGDSOCKET | 엔트로피 수집 데몬 소켓뿐만 아니라 유사 CURLOPT_RANDOM_FILE. | |
CURLOPT_ENCODING | HTTP 요청 헤더는 "수락 - 인코딩 :"값입니다. 지원되는 인코딩 "정체성", "폐의"및 "gzip을". 빈 문자열 ""경우, 첫 번째 요청이 지원되는 모든 인코딩 유형에 전송됩니다. | 그것은 컬 7.10에서 추가되었다. |
CURLOPT_FTPPORT | 이 값은 필요한 FTP "POST"명령에 대한 IP 주소를 얻기 위해 사용될 것이다. "POST"명령은 우리의 지정된 IP 주소에 연결하는 원격 서버를 알려줍니다. '-'를 사용하는 기본 IP 주소이 문자열은 일반 텍스트 IP 주소, 호스트 이름, 네트워크 인터페이스 이름 (UNIX에서) 또는 단지가 될 수 있습니다. | |
CURLOPT_INTERFACE | 넷 송신 인터페이스 이름 인터페이스 이름, IP 주소 또는 호스트 이름 일 수있다. | |
CURLOPT_KRB4LEVEL | KRB4 (Kerberos를 4) 보안 수준. 다음 값이 유효 (상위 낮은에서)입니다 : "일반", "안전 ", "비밀", "개인".. 문자열이 일치하지 않는 이들은 "개인"사용됩니다. 이 옵션은 KRB4 안전 인증을 사용하지 않도록 설정합니다 NULL로 설정됩니다. 현재 KRB4 안전 인증은 FTP 전송에 사용할 수 있습니다. | |
CURLOPT_POSTFIELDS | 은 "POST"동작에서 HTTP 프로토콜을 사용하는 모든 데이터를 보낼 수있다. 에서 @ 접두사와 파일 이름 앞에 파일을 전송하고 전체 경로를 사용합니다. 이 매개 변수는 urlencode되고 이후 문자열 'para1 = VAL1 & para2 = val2만큼으로 유사 할 수있다 & ...' 또는 키 필드 이름을 사용하여 필드 데이터 배열 값. 값 인 경우 배열, 컨텐츠 유형 헤더는 multipart / form-data로 설정됩니다. | |
CURLOPT_PROXY | HTTP 프록시 채널. | |
CURLOPT_PROXYUSERPWD | 형식 문자열 하나는 프록시 "[암호] [사용자 이름]"에 연결합니다 . | |
CURLOPT_RANDOM_FILE | SSL은 난수 시드 파일 이름을 생성하는데 사용된다. | |
CURLOPT_RANGE | X와 Y 바이트에 두 옵션 데이터 수집 범위 인 것을 특징으로 "XY"형태에서. HTTP 전송 스레드는 또한 "XY, NM"등의 쉼표로 구분하여 여러 개의 같은 중간 중복 항목을 지원합니다. | |
CURLOPT_REFERER | 내용 : HTTP 헤더 "리퍼러"요청합니다. | |
CURLOPT_SSL_CIPHER_LIST | SSL 암호화 알고리즘의 목록입니다. 이러한 RC4-SHA 및 TLSv1의로 사용 가능한 암호화의 목록입니다. | |
CURLOPT_SSLCERT | PEM 형식의 인증서를 포함하는 파일의 이름. | |
CURLOPT_SSLCERTPASSWD | 암호의 CURLOPT_SSLCERT 인증서를 사용이 필요합니다. | |
CURLOPT_SSLCERTTYPE | 유형 인증서. 지원되는 형식은 "PEM"(기본값), "DER"와 "ENG"를합니다. | cURL을 7.9.3에 합류했다. |
CURLOPT_SSLENGINE | CURLOPT_SSLKEY에서 SSL 개인 키를 암호화 엔진 변수를 지정하는 데 사용. | |
CURLOPT_SSLENGINE_DEFAULT | 비대칭 암호화 작업에 사용되는 변수. | |
CURLOPT_SSLKEY | 파일 이름은 SSL 개인 키가 포함되어 있습니다. | |
CURLOPT_SSLKEYPASSWD | 는 SSL 개인 키에 지정된 CURLOPT_SSLKEY 암호를 입력합니다.
| |
CURLOPT_SSLKEYTYPE | 키 입력 지원 CURLOPT_SSLKEY에 지정된 개인 키 암호화 유형은 "PEM"(기본값), "DER"와 "ENG"입니다. | |
CURLOPT_URL | URL 주소가 배치 curl_init () 함수로 얻을 필요가있다. | |
CURLOPT_USERAGENT | 헤더 캐릭터 라인 : HTTP 요청에서 "사용자 에이전트"를 포함한다. | |
CURLOPT_USERPWD | "[이름] : [비밀번호 연결을 전달하는 형식으로 사용자 이름과 암호가 필요합니다 ]." |
다음과 같은 선택적 매개 변수이 옵션은, 값이 배열로 설정해야합니다 :
옵션 | 옵션 값 값 | 말 |
---|---|---|
CURLOPT_HTTP200ALIASES | 200 응답 코드 배열이 정답 간주 응답 배열, 그렇지 않으면 오류로 간주한다. | CURL 7.10.3이 추가됩니다. |
CURLOPT_HTTPHEADER | HTTP 헤더 필드의 배열을 설정합니다. 배열 ( '콘텐츠 유형 : 텍스트 / 일반', '콘텐츠 - 길이 : 100') 다음 설정의 배열을 사용하여 | |
CURLOPT_POSTQUOTE | 실행 후 FTP 명령 세트를 수행하는 서버에 대한 전체 FTP 요청이다. | |
CURLOPT_QUOTE | FTP의 집합은 FTP 요청하기 전에 서버에 실행 된 명령. |
이러한 옵션에 다음과 같은 선택적 매개 변수의 값은 (는 fopen ()를 사용하여, 예를 들어) 자원의 흐름으로 설정해야합니다 :
옵션 | 옵션 값 값 |
---|---|
CURLOPT_FILE | 설정 출력 파일 위치, 값이 자원 유형이며, 기본값은 STDOUT (브라우저)입니다. |
CURLOPT_INFILE | 파일을 업로드 어드레스 파일, 리소스 유형의 값을 판독한다. |
CURLOPT_STDERR | 자원 유형 대신 기본 STDERR은 에러 출력 어드레스 값을 설정이다. |
CURLOPT_WRITEHEADER | 어드레스 파일의 콘텐츠 기록 헤더 부분 설정 값 자원 유형이다. |
이러한 선택적인 매개 변수는 다음 옵션의 경우, 값이 콜백 함수의 이름으로 설정한다 :
옵션 | 옵션 값 값 |
---|---|
CURLOPT_HEADERFUNCTION | 첫 번째는 컬 리소스 핸들이고, 두 번째 헤더 데이터를 출력, 2 개의 인수를 취하는 콜백 함수를 설정합니다. 출력 헤더 데이터는 상기 데이터의 크기가 기록 된 반환하는 함수에 의존한다. |
CURLOPT_PASSWDFUNCTION | 콜백 함수를 설정하면 첫번째가 컬 리소스 핸들, 세 개의 인수를, 두 번째는 암호를 입력하라는 메시지이며, 세 번째 매개 변수가 허용되는 최대 암호 길이입니다. 암호의 값을 돌려줍니다. |
CURLOPT_PROGRESSFUNCTION | 콜백 함수를 설정하면, 처음에는 컬 리소스 핸들, 세 인수를, 두 번째는 리소스 파일 디스크립터이며, 세 번째는 길이이다. 그것은 포함 된 데이터를 반환합니다. |
CURLOPT_READFUNCTION | 콜백 함수 이름. 이 함수는 세 개의 매개 변수이어야합니다. 첫 번째는 컬 자원이고 두번째 스트림 리소스 컬 CURLOPT_INFILE 전달 옵션이며, 세번째 파라미터 데이터를 판독 할 수있는 최대 수이다. 콜백 함수는 이하의 문자열 길이를 반환하거나 요청 된 데이터의 양 (세 번째 매개 변수)와 동일해야합니다. 일반 들어오는 스트림 리소스에서 참조하십시오. EOF (파일 끝) 신호로 빈 문자열을 반환합니다. |
CURLOPT_WRITEFUNCTION | 콜백 함수 이름. 이 함수는 두 개의 인수를 허용해야합니다. 첫 번째는 컬 자원이며, 둘째는 기록 될 데이터의 스트링이다. 데이터는 기능에 저장해야합니다. 함수는 별도로 전송이 에러에 의해 중단되며, 정확한 바이트 수는 입력 데이터에 기록되는 반환해야한다. |
반환 값
성공적인 TRUE 반환 또는 실패는 FALSE를 반환합니다.
업데이트 로그
해제 | 설명 |
---|---|
5.2.10 | 소개 CURLOPT_PROTOCOLS 및 CURLOPT_REDIR_PROTOCOLS . |
5.1.0 | 소개 CURLOPT_AUTOREFERER , CURLOPT_BINARYTRANSFER , CURLOPT_FTPSSLAUTH , CURLOPT_PROXYAUTH 및 CURLOPT_TIMECONDITION . |
5.0.0 | 소개 CURLOPT_FTP_USE_EPRT , CURLOPT_NOSIGNAL , CURLOPT_UNRESTRICTED_AUTH , CURLOPT_BUFFERSIZE , CURLOPT_HTTPAUTH , CURLOPT_PROXYPORT , CURLOPT_PROXYTYPE , CURLOPT_SSLCERTTYPE 및 CURLOPT_HTTP200ALIASES . |
예
새로운 컬 세션을 초기화하고 웹 페이지를 얻기
<?php // 创建一个新cURL资源 $ch = curl_init(); // 设置URL和相应的选项 curl_setopt($ch, CURLOPT_URL, "http://www.example.com/"); curl_setopt($ch, CURLOPT_HEADER, false); // 抓取URL并把它传递给浏览器 curl_exec($ch); //关闭cURL资源,并且释放系统资源 curl_close($ch); ?>
파일 예 업로드 :
<?php /* http://localhost/upload.php: print_r($_POST); print_r($_FILES); */ $ch = curl_init(); $data = array('name' => 'Foo', 'file' => '@/home/user/test.png'); curl_setopt($ch, CURLOPT_URL, 'http://localhost/upload.php'); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_exec($ch); ?>
다음, 상기 출력 결과의 예 :
Array ( [name] => Foo ) Array ( [file] => Array ( [name] => test.png [type] => image/png [tmp_name] => /tmp/phpcpjNeQ [error] => 0 [size] => 279 ) )
주의
배열 CURLOPT_POSTFIELDS 전달, 컬 데이터가 다중 / 폼 데이터로 인코딩 한 후 URL 인코딩 된 문자열을 전달한다, 데이터는 응용 프로그램 / x-www-form-urlencoded로 인코딩됩니다.