백엔드 개발 PHP 튜토리얼 php cur_setopt 함수의 개념과 사용예 소개

php cur_setopt 함수의 개념과 사용예 소개

May 19, 2017 am 11:24 AM

php cur_setopt 함수는 어떤 기능을 하나요?

curl_setopt 함수는 PHP에서 중요한 함수로 cURL 전송 옵션을 설정하는 데 사용됩니다. 그럼 어떻게 설정되나요? 매개변수는 무엇입니까? 이 글의 주요 목적은 PHP의 curl_setopt 함수의

에 대해 자세히 소개하는 것입니다.

구문 설명 먼저 살펴보기

bool curl_setopt ( resource $ch , int $option , mixed $value )
로그인 후 복사

매개변수 세부정보:

ch

by 컬_init()에 의해 반환된 cURL 핸들입니다.

옵션

CURLOPT_XXX 옵션을 설정해야 합니다.

옵션에 설정할 값입니다.

PS: 값은 옵션에서 선택한 매개변수에 따라 다음과 같이 설정됩니다.

옵션 매개변수의 경우 다음 옵션에서는 값을 bool 유형 값으로 설정해야 합니다:



다음 옵션의 선택적 매개변수의 경우 값은 정수 유형 값으로 설정되어야 합니다.

옵션선택비고
CURLOPT_AUTOREFERER위치:를 기준으로 리디렉션할 때 헤더에 Referer: 정보를 자동으로 설정합니다.
CURLOPT_BINARYTRANSFERCURLOPT_RETURNTRANSFER가 활성화되면 네이티브( Raw ) 출력.
CURLOPT_COOKIESESSION이 활성화되면 컬은 하나의 세션 쿠키만 전달하고 다른 쿠키는 무시합니다. 기본값 이 경우 cURL은 모든 쿠키를 서버에 반환합니다. 세션 쿠키는 서버 측 세션이 유효한지 확인하는 데 사용되는 쿠키를 말합니다.
CURLOPT_CRLF 활성화되면 Unix 라인 피드를 캐리지 리턴 라인 피드로 변환합니다.
CURLOPT_DNS_USE_GLOBAL_CACHE활성화하면 전역 DNS 캐시가 활성화됩니다. safe. 이며 기본적으로 활성화되어 있습니다.
CURLOPT_FAILONERRORHTTP 상태 코드를 표시합니다. 기본 동작은 숫자가 포함된 HTTP 메시지를 무시하는 것입니다. 400 이하입니다.
CURLOPT_FILETIME활성화하면 원격 문서의 정보를 수정하려고 시도합니다. 결과 정보는 컬_getinfo() 함수의 CURLINFO_FILETIME 옵션을 통해 반환됩니다. cur_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활성화한 경우 FTP 전송 중 PASV 모드로 되돌리기 전에 먼저 다음을 시도해 보세요. EPSV 명령. FALSE로 설정된 경우 EPSV 명령을 비활성화합니다.
CURLOPT_FTPAPPEND활성화하면 파일을 덮어쓰는 대신 파일에 추가합니다.
CURLOPT_FTPASCIICURLOPT_TRANSFERTEXT의 별칭입니다.
CURLOPT_FTPLISTONLY활성화하면 FTP 디렉터리의 이름만 나열됩니다.
CURLOPT_HEADER활성화하면 헤더 파일 정보가 데이터 스트림으로 출력됩니다.
CURLINFO_HEADER_OUT활성화된 경우 추적 핸들에 대한 요청 문자열입니다. PHP 5.1.3부터 ​​사용 가능합니다. CURLINFO_접두사는 의도된 것입니다.
CURLOPT_HTTPGET활성화하면 HTTP 메서드가 GET으로 설정되므로 GET이 기본값인 경우에만 사용됩니다. 수정되었습니다.
CURLOPT_HTTPPROXYTUNNEL활성화하면 HTTP 프록시를 통해 전송됩니다.
CURLOPT_MUTE활성화되면 cURL 함수에서 수정된 모든 매개변수가 기본값으로 복원됩니다. 가치.
CURLOPT_NETRC연결이 설정된 후 파일에 접근하여 사용자 이름과 비밀번호 정보를 얻습니다. 원격 사이트에 연결합니다.
CURLOPT_NOBODY활성화하면 HTML의 BODY 부분이 출력되지 않습니다.
CURLOPT_NOPROGRESS

활성화되면 컬 전송 진행률 표시줄을 닫습니다. 기본값은 이 항목은 활성화로 설정됩니다.

참고:

PHP는 이 옵션을 자동으로 TRUE로 설정합니다. 이 옵션은 디버깅 목적으로만 변경해야 합니다.


CURLOPT_NOSIGNAL활성화되면 PHP 신호에 대한 모든 컬 패스를 무시합니다. . 이 항목은 SAPI 멀티스레드 전송 중에 기본적으로 활성화됩니다. 7.10에서 cURL이 추가되었습니다.
CURLOPT_POST활성화되면 application/x-www-form- 유형의 일반 POST 요청이 전송됩니다. urlencoded 는 양식 제출과 같습니다.
CURLOPT_PUT은 활성화된 경우 HTTP가 파일을 보낼 수 있도록 허용하며 CURLOPT_INFILE도 설정해야 합니다. CURLOPT_INFILESIZE.
CURLOPT_RETURNTRANSFERcurl_exec()에서 얻은 정보를 파일 스트림 형식으로 반환합니다. 직접 출력.
CURLOPT_SSL_VERIFYPEER비활성화되면 cURL이 서버에서 확인을 종료합니다. 인증서를 설정하려면 CURLOPT_CAINFO 옵션을 사용하세요. 인증서 디렉터리를 설정하려면 CURLOPT_CAPATH 옵션을 사용하세요.           CURLOPT_SSL_VERIFYPEER(기본값은 2)가 활성화된 경우 CURLOPT_SSL_VERIFYHOSTTRUE로 설정해야 하며, 그렇지 않으면 FALSE로 설정해야 합니다. cURL 7.10부터 기본값은 TRUE입니다. cURL 7.10부터는 번들 설치가 기본으로 제공됩니다.
CURLOPT_TRANSFERTEXT 활성화된 경우 FTP 전송에 ASCII 모드를 사용합니다. LDAP의 경우 HTML이 아닌 일반 텍스트 정보를 검색합니다. Windows 시스템에서는 시스템이 STDOUT을 바이너리 모드로 설정하지 않습니다.
CURLOPT_UNRESTRICTED_AUTHCURLOPT_FOLLOWLOCATION을 사용하여 생성된 여러 헤더 도메인 이름이 변경된 경우에도 위치에 추가됩니다.
CURLOPT_UPLOAD파일 업로드를 허용하도록 활성화합니다.
CURLOPT_VERBOSE활성화되면 모든 정보가 보고되고 STDERR<에 저장됩니다. 🎜 > 또는 지정된 CURLOPT_STDERR.
는 연결 포트를 지정하는 데 사용됩니다. (선택 사항) CURLOPT_PROTOCOLS의 비트 필드입니다. 활성화되면 비트필드 값은 libcurl이 전송 중에 사용할 수 있는 프로토콜을 제한합니다. 이를 통해 많은 프로토콜을 지원하도록 libcurl을 컴파일할 수 있지만 사용이 허용된 프로토콜 중 일부만 사용할 수 있습니다. 기본적으로 libcurl은 지원하는 모든 프로토콜을 사용합니다. cURL 7.19에 CURLOPT_REDIR_PROTOCOLS LE, CURLPROTO_TFTP, CURLPROTO_ALLHTTP 프록시 연결 확인 방법입니다. 해당 옵션을 설정하려면 및 프록시 서버의 포트입니다. 포트는 CURLOPT_TIMEOUTCURLOPT_TIMEOUT_MS<🎜><🎜><🎜> CURLOPT_HTTP200ALIASES< 🎜><🎜><🎜>200 응답 코드 배열인 경우, 배열에 포함된 응답은 올바른 응답으로 간주되고, 그렇지 않으면 오류로 간주됩니다. <🎜><🎜>이 cURL 7.10.3에 추가되었습니다. <🎜><🎜><🎜><🎜><🎜>CURLOPT_HTTPHEADER<🎜><🎜><🎜>HTTP 헤더 필드를 설정하는 데 사용되는 배열입니다. 다음 형식의 배열을 사용하여 설정합니다. array('콘텐츠 유형: 텍스트/일반', '콘텐츠 길이: 100')<🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜>CURLOPT_POSTQUOTE<🎜><🎜 ><🎜>FTP 요청이 실행된 후 서버에서 실행되는 FTP 명령 집합입니다. <🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜>CURLOPT_QUOTE<🎜><🎜><🎜>FTP 요청 전에 서버에서 실행되는 FTP 명령 집합입니다. <🎜><🎜><🎜><🎜><🎜><🎜><🎜>


对于下面的这些option的可选参数,value应该被设置一个流资源 (例如使用fopen()):

옵션선택비고
CURLOPT_BUFFERSIZE매번 얻은 데이터를 읽어들이는 캐시의 크기이지만, 이 값이 매번 채워진다는 보장은 없습니다. 이 cURL 7.10에 추가되었습니다.
CURLOPT_CLOSEPOLICYCURLCLOSEPOLICY_LEAST_RECENTLY_USED 또는 CURLCLOSEPOLICY_OLDEST 세 가지가 있지만 cURL은 아직 이를 지원하지 않습니다.
CURLOPT_CONNECTTIMEOUT연결을 시작하기 전에 기다리는 시간입니다. 무기한 기다리세요.
CURLOPT_CONNECTTIMEOUT_MS연결 시도를 기다리는 시간(밀리초)입니다. 0으로 설정하면 무한 대기합니다. 이 cURL 7.16.2에 추가되었습니다. PHP 5.2.3부터 사용 가능합니다.
CURLOPT_DNS_CACHE_TIMEOUTDNS 정보를 메모리에 저장하는 시간을 설정합니다. 기본값은 120초입니다.
CURLOPT_FTPSSLAUTHFTP 확인 방법: CURLFTPAUTH_SSL(SSL을 먼저 시도) , CURLFTPAUTH_TLS(TLS를 먼저 시도) 또는 CURLFTPAUTH_DEFAULT(cURL이 자동으로 결정하도록 함). 이 cURL 7.12.2에 추가되었습니다.
CURLOPT_HTTP_VERSIONCURL_HTTP_VERSION_NONE(기본값, 사용할 버전은 cURL에서 결정), 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(바이트)보다 작은 경우 /sec ), PHP는 전송이 너무 느리기 때문에 CURLOPT_LOW_SPEED_TIME을 사용하여 전송을 취소할지 여부를 결정합니다.
CURLOPT_LOW_SPEED_TIME전송 속도가 CURLOPT_LOW_SPEED_LIMIT(바이트)보다 작은 경우 /sec ), PHP는 전송이 너무 느리기 때문에 CURLOPT_LOW_SPEED_TIME을 사용하여 전송을 취소할지 여부를 결정합니다.
CURLOPT_MAXCONNECTS초과할 경우 허용되는 최대 연결 수 CURLOPT_CLOSEPOLICY 어떤 연결을 중지해야 하는지 결정합니다.
CURLOPT_MAXREDIRSHTTP 리디렉션의 최대 수를 지정합니다. 이 옵션은 <🎜과 동일합니다. > CURLOPT_FOLLOWLOCATION과 함께 사용됩니다.
CURLOPT_PORT
CURLOPT_PROTOCOLSCURLPROTO_*에 대한 비트필드 포인터. 활성화되면 비트필드 값은 libcurl이 전송 중에 사용할 수 있는 프로토콜을 제한합니다. 이를 통해 많은 프로토콜을 지원하도록 libcurl을 컴파일할 수 있지만 사용이 허용된 프로토콜 중 일부만 사용할 수 있습니다. 기본적으로 libcurl은 지원하는 모든 프로토콜을 사용합니다. cURL 7.19에 CURLOPT_REDIR_PROTOCOLS LE, CURLPROTO_TFTP, CURLPROTO_ALL이 추가되었습니다.
CURLPROTO_*이 추가되었습니다. CURLOPT_PROXYAUTH
CURLOPT_HTTPAUTH의 비트필드 플래그를 사용하세요. 프록시 인증의 경우 현재 CURLAUTH_BASICCURLAUTH_NTLM만 지원됩니다. 이 cURL 7.10.7에 추가되었습니다. CURLOPT_PROXYPORT
CURLOPT_PROXY에서도 설정할 수 있습니다.
CURLOPT_PROXYTYPECURLPROXY_HTTP(기본값) 또는 CURLPROXY_SOCKS5입니다. 이 cURL 7.10에 추가되었습니다.
CURLOPT_REDIR_PROTOCOLSCURLPROTO_*의 비트 필드 값입니다. 활성화된 경우 비트 필드 값은 CURLOPT_FOLLOWLOCATION이 활성화된 경우 리디렉션을 따를 때 전송 스레드가 사용할 수 있는 프로토콜을 제한합니다. 이렇게 하면 리디렉션 시 전송 스레드를 허용된 프로토콜의 하위 집합으로 제한할 수 있습니다. 기본적으로 libcurl은 FILE 및 SCP를 제외한 모든 프로토콜을 허용합니다. 이는 지원되는 모든 프로토콜을 무조건 따르는 7.19.4 시험판 버전과 약간 다릅니다. 프로토콜 상수는 CURLOPT_PROTOCOLS를 참조하세요. 이 cURL 7.19.4에 추가되었습니다.
CURLOPT_RESUME_FROM전송을 재개할 때 바이트 오프셋을 전달합니다(재개된 전송에 사용됨).
CURLOPT_SSL_VERIFYHOST1 서버 SSL 인증서에 공통 이름이 존재하는지 확인하세요. 번역자 주: 일반 이름은 일반적으로 SSL 인증서를 신청하려는 도메인 이름(도메인) 또는 하위 도메인(하위 도메인)을 입력하는 것을 의미합니다. 2 일반 이름이 존재하고 제공된 호스트 이름과 일치하는지 확인합니다.
CURLOPT_SSLVERSION사용할 SSL 버전(2 또는 3)입니다. 기본적으로 PHP는 이 값을 자체적으로 감지하지만 경우에 따라 수동으로 설정해야 할 수도 있습니다.
CURLOPT_TIMECONDITIONCURLOPT_TIMEVALUE에서 지정한 특정 시간 이후인 경우 수정되지 않았으며 CURLOPT_HEADER가 true인 경우 "304 Not Modified" 헤더가 표시됩니다. CURLOPT_HEADER가 false인 경우 CURL_TIMECOND_IFUNMODSINCE를 사용하고 기본값은 CURL_TIMECOND_IFUNMODSINCE입니다.
cURL 실행이 허용되는 최대 시간(초)을 설정합니다.
cURL 실행이 허용되는 최대 밀리초 수를 설정합니다. 이 cURL 7.16.2에 추가되었습니다. PHP 5.2.3부터 사용 가능합니다. <… .



다음 옵션의 선택적 매개변수의 경우 값을 문자열 유형 값으로 설정해야 합니다.

CURLOPT_SSL_VERIFYPEERCURLOPT_COOKIE"Cookie: ""). HEAD"를 HTTP 요청으로 사용합니다. 이는 "DELETE""POST"다음 형식으로 연결에 필요한 사용자 이름과 비밀번호를 전달하세요.
옵션선택비고
CURLOPT_CAINFO서버 확인을 위한 하나 이상의 인증서를 보유하는 파일 이름입니다. 이 매개변수는 CURLOPT_SSL_VERIFYPEER와 함께 사용될 때만 의미가 있습니다. . 이 옵션은 와 함께 사용됩니다.
HTTP의 부분을 설정합니다. 콘텐츠를 요청합니다. 여러 쿠키는 세미콜론과 공백으로 구분됩니다(예: "
과일=사과; 색상=빨간색
CURLOPT_COOKIEFILE쿠키 데이터가 포함된 파일 이름은 Netscape일 수 있습니다. 또는 순수 HTTP 헤더 정보를 파일에 저장하세요.
CURLOPT_COOKIEJAR접속 완료 후 쿠키 정보를 저장하는 파일입니다.
CURLOPT_CUSTOMREQUEST를 사용자 정의 요청 메시지 GET"으로 바꾸세요
또는
또는 기타 더 비밀스러운 HTTP 요청을 실행하는 데 유용합니다. 유효한 값에는 "GET", ,

"CONNECT" 등이 있습니다. 즉, 여기에 전체 HTTP 요청을 입력하지 마세요. 예를 들어 "GET /index.html HTTP/1.0rnrn"을 입력하면 올바르지 않습니다. 참고:서버가 이를 지원하는지 확인할 때까지 이 사용자 정의 요청 방법을 사용하지 마십시오.


CURLOPT_EGDSOCKET CURLOPT_RANDOM_FILE과 유사합니다. 엔트로피 게더링 데몬 소켓.
CURLOPT_ENCODINGHTTP 요청 헤더 "Accept-Encoding: " 값 . 지원되는 인코딩은 "identity", "deflate""gzip"입니다. 빈 문자열 ""인 경우 요청 헤더는 지원되는 모든 인코딩 유형을 보냅니다. 이 cURL 7.10에 추가되었습니다.
CURLOPT_FTPPORT이 값은 FTP "POST" 명령에 필요한 IP 주소를 얻는 데 사용됩니다. "POST" 명령은 원격 서버에 우리가 지정한 IP 주소에 연결하도록 지시합니다. 이 문자열은 일반 텍스트 IP 주소, 호스트 이름, 네트워크 인터페이스 이름(UNIX의 경우)이거나 기본 IP 주소를 사용하는 '-'일 수 있습니다.
CURLOPT_INTERFACE네트워크 전송 인터페이스 이름으로, 인터페이스 이름, IP 주소 또는 호스트 이름.
CURLOPT_KRB4LEVELKRB4(Kerberos 4) 보안 수준입니다. 다음 값 중 하나가 유효합니다(낮은 것부터 높은 것까지): "clear", "safe", "confidential", "비공개".. 문자열이 이들 중 어느 것과도 일치하지 않으면 "private"이 사용됩니다. 이 옵션을 NULL으로 설정하면 KRB4 보안 인증이 비활성화됩니다. 현재 KRB4 보안 인증은 FTP 전송에만 사용할 수 있습니다.
CURLOPT_POSTFIELDS모든 데이터는 HTTP 프로토콜의 "POST" 작업을 사용하여 전송됩니다. 파일을 보내려면 파일 이름 앞에 @를 붙이고 전체 경로를 사용하세요. 이 매개변수는 'para1=val1¶2=val2&...'와 같은 urlencoded 문자열을 통해 전달되거나 필드 이름이 키이고 필드 데이터가 값인 배열을 사용하여 전달될 수 있습니다. value가 배열인 경우 Content-Type 헤더는 multipart/form-data로 설정됩니다.
CURLOPT_PROXYHTTP 프록시 채널입니다.
CURLOPT_PROXYUSERPWDA "[사용자 이름]:[ 비밀번호]" 형식 문자열.
CURLOPT_RANDOM_FILESSL 난수 시드를 생성하는 데 사용되는 파일 이름입니다.
CURLOPT_RANGE "X-Y" 형식, 여기서 X Y는 바이트 단위로 측정된 획득된 선택적 데이터의 범위입니다. HTTP 전송 스레드는 "X-Y,N-M"과 같이 쉼표로 구분된 여러 중복 항목도 지원합니다.
CURLOPT_REFERERHTTP 요청 헤더 "Referer: " 내용 .
CURLOPT_SSL_CIPHER_LISTSSL 암호화 알고리즘 목록입니다. 예를 들어 RC4-SHATLSv1은 모두 사용 가능한 암호화 목록입니다.
CURLOPT_SSLCERTPEM 형식의 인증서가 포함된 파일 이름입니다.
CURLOPT_SSLCERTPASSWDCURLOPT_SSLCERT 인증서를 사용하려면 비밀번호가 필요합니다.
CURLOPT_SSLCERTTYPE인증서 유형입니다. 지원되는 형식은 "PEM"(기본값), "DER""ENG"입니다. 이 cURL 7.9.3에 추가되었습니다.
CURLOPT_SSLENGINECURLOPT_SSLKEY에 지정된 SSL 개인 키에 사용되는 암호화 엔진 변수입니다.
CURLOPT_SSLENGINE_DEFAULT비대칭 암호화 작업에 사용되는 변수입니다.
CURLOPT_SSLKEYSSL 개인 키가 포함된 파일의 이름입니다.
CURLOPT_SSLKEYPASSWD

CURLOPT_SSLKEY에 지정된 SSL 개인 키.

참고:

이 옵션에는 민감한 비밀번호 정보가 포함되어 있으므로 이 PHP 스크립트를 안전하게 보관하세요.


CURLOPT_SSLKEYTYPECURLOPT_SSLKEY 암호화 유형 개인 키 유형은 "PEM"(기본값), "DER""ENG"입니다.
CURLOPT_URL얻어야 하는 URL 주소는 에서도 얻을 수 있습니다. cur_init()함수에 설정합니다.
CURLOPT_USERAGENTHTTP 요청에 "User-Agent: "< 포함 🎜>헤더 문자열.
CURLOPT_USERPWD "[사용자 이름]:[비밀번호]".



아래 옵션 선택 사항 매개변수, 값은 배열로 설정되어야 합니다:

옵션 선택 가능< em class="reset">값

비고
选项可选value备注
CURLOPT_HTTP200ALIASES200响应码数组,数组中的响应吗被认为是正确的响应,否则被认为是错误的。在cURL 7.10.3中被加入。
CURLOPT_HTTPHEADER一个用来设置HTTP头字段的数组。使用如下的形式的数组进行设置: array('Content-type: text/plain', 'Content-length: 100')
CURLOPT_POSTQUOTE在FTP请求执行完成后,在服务器上执行的一组FTP命令。
CURLOPT_QUOTE一组先于FTP请求的在服务器上执行的FTP命令。
选项可选value
CURLOPT_FILE设置输出文件的位置,值是一个资源类型,默认为STDOUT (浏览器)。
CURLOPT_INFILE在上传文件的时候需要读取的文件地址,值是一个资源类型。
CURLOPT_STDERR设置一个错误输出地址,值是一个资源类型,取代默认的STDERR
CURLOPT_WRITEHEADER设置header部分内容的写入的文件地址,值是一个资源类型。


对于下面的这些option的可选参数,value应该被设置为一个回调函数名:

选项可选value
CURLOPT_HEADERFUNCTION设置一个回调函数,这个函数有两个参数,第一个是cURL的资源句柄,第二个是输出的header数据。header数据的输出必须依赖这个函数,返回已写入的数据大小。
CURLOPT_PASSWDFUNCTION设置一个回调函数,有三个参数,第一个是cURL的资源句柄,第二个是一个密码提示符,第三个参数是密码长度允许的最大值。返回密码的值。
CURLOPT_PROGRESSFUNCTION设置一个回调函数,有三个参数,第一个是cURL的资源句柄,第二个是一个文件描述符资源,第三个是长度。返回包含的数据。
CURLOPT_READFUNCTION回调函数名。该函数应接受三个参数。第一个是 cURL resource;第二个是通过选项 CURLOPT_INFILE 传给 cURL 的 stream resource;第三个参数是最大可以读取的数据的数量。回 调函数必须返回一个字符串,长度小于或等于请求的数据量(第三个参数)。一般从传入的 stream resource 读取。返回空字符串作为 EOF(文件结束) 信号。
CURLOPT_WRITEFUNCTION回调函数名。该函数应接受两个参数。第一个是 cURL resource;第二个是要写入的数据字符串。数 据必须在函数中被保存。函数必须返回准确的传入的要写入数据的字节数,否则传输会被一个错误所中 断。

返回值

成功时返回 TRUE, 或者在失败时返回 FALSE。

实例

初始化一个新的cURL会话并获取一个网页

<?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(&#39;name&#39; => &#39;Foo&#39;, &#39;file&#39; => &#39;@/home/user/test.png&#39;);

curl_setopt($ch, CURLOPT_URL, &#39;http://localhost/upload.php&#39;);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

curl_exec($ch);
?>
로그인 후 복사

以上实例输出结果如下:

php cur_setopt 함수의 개념과 사용예 소개

注释

传递一个数组到CURLOPT_POSTFIELDS,cURL会把数据编码成 multipart/form-data,而然传递一个URL-encoded字符串时,数据会被编码成 application/x-www-form-urlencoded。

【相关文章推荐】

PHP curl_exec函数的用法实例详解

위 내용은 php cur_setopt 함수의 개념과 사용예 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

CakePHP 프로젝트 구성 CakePHP 프로젝트 구성 Sep 10, 2024 pm 05:25 PM

이번 장에서는 CakePHP의 환경 변수, 일반 구성, 데이터베이스 구성, 이메일 구성에 대해 알아봅니다.

Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Dec 24, 2024 pm 04:42 PM

PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

CakePHP 날짜 및 시간 CakePHP 날짜 및 시간 Sep 10, 2024 pm 05:27 PM

cakephp4에서 날짜와 시간을 다루기 위해 사용 가능한 FrozenTime 클래스를 활용하겠습니다.

CakePHP 파일 업로드 CakePHP 파일 업로드 Sep 10, 2024 pm 05:27 PM

파일 업로드 작업을 위해 양식 도우미를 사용할 것입니다. 다음은 파일 업로드의 예입니다.

CakePHP 라우팅 CakePHP 라우팅 Sep 10, 2024 pm 05:25 PM

이번 장에서는 라우팅과 관련된 다음과 같은 주제를 학습하겠습니다.

CakePHP 토론 CakePHP 토론 Sep 10, 2024 pm 05:28 PM

CakePHP는 PHP용 오픈 소스 프레임워크입니다. 이는 애플리케이션을 훨씬 쉽게 개발, 배포 및 유지 관리할 수 있도록 하기 위한 것입니다. CakePHP는 강력하고 이해하기 쉬운 MVC와 유사한 아키텍처를 기반으로 합니다. 모델, 뷰 및 컨트롤러 gu

PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 Dec 20, 2024 am 11:31 AM

VS Code라고도 알려진 Visual Studio Code는 모든 주요 운영 체제에서 사용할 수 있는 무료 소스 코드 편집기 또는 통합 개발 환경(IDE)입니다. 다양한 프로그래밍 언어에 대한 대규모 확장 모음을 통해 VS Code는

CakePHP 유효성 검사기 만들기 CakePHP 유효성 검사기 만들기 Sep 10, 2024 pm 05:26 PM

컨트롤러에 다음 두 줄을 추가하면 유효성 검사기를 만들 수 있습니다.

See all articles