> 백엔드 개발 > PHP 튜토리얼 > PHP 컬_setopt 기능을 사용하는 방법은 무엇입니까? 컬_setopt 사용법에 대한 자세한 설명

PHP 컬_setopt 기능을 사용하는 방법은 무엇입니까? 컬_setopt 사용법에 대한 자세한 설명

*文
풀어 주다: 2023-03-18 15:20:02
원래의
14013명이 탐색했습니다.

이 글에서는 주로 PHP에서 컬_setopt 함수의 사용법을 소개하고, 컬_setopt 함수의 기능, 정의, 목적 및 관련 사용법을 예제 형식으로 분석합니다. 그것이 모두에게 도움이 되기를 바랍니다.

PHP 컬_setopt 기능을 사용하는 방법은 무엇입니까? 컬_setopt 사용법에 대한 자세한 설명

curl_setopt 함수는 PHP에서 중요한 기능입니다. 이 함수는 사용자 로그인, 등록 및 기타 사용자 작동 동작 시뮬레이션과 같은 일부 사용자 동작을 모방할 수 있습니다.

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

curl_setopt() 함수는 CURL 세션에 대한 옵션을 설정합니다. 옵션파라미터는 원하시는 설정이고 값은 이 옵션에서 주는 값입니다
Fake login

메인사이트 wap로그인과 discuz forum wap로그인 양쪽의 사용자 데이터가 같은 테이블에서 호출됩니다

//论坛api登录接口地址:
$uri = "http//yoursiteweb.com/"
//参数数组

$data = array(
'username' => 'username',
'password' => 'password',
);
//操作执行

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $uri);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_exec($ch);
로그인 후 복사

두 가지 오늘의 세션 ID 생성 메커니즘을 통합하고 포럼 wap 사용자 확인 방법을 변환

사용자 로그인 인스턴스를 모방

function vcurl($url,$post='',$cookie='',$cookiejar='',$referer=''){
$tmpInfo = '';
$cookiepath = getcwd().'./'.$cookiejar;
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
if($referer) {
curl_setopt($curl, CURLOPT_REFERER, $referer);
} else {
curl_setopt($curl, CURLOPT_AUTOREFERER, 1);
}
if($post) {
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $post);
}
if($cookie) {
curl_setopt($curl, CURLOPT_COOKIE, $cookie);
}
if($cookiejar) {
curl_setopt($curl, CURLOPT_COOKIEJAR, $cookiepath);
curl_setopt($curl, CURLOPT_COOKIEFILE, $cookiepath);
}
//curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_TIMEOUT, 100);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$tmpInfo = curl_exec($curl);
if (curl_errno($curl)) {
echo ' 错误:'.curl_error($curl); 
} 
curl_close($curl); 
return $tmpInfo; 
} 
?>
로그인 후 복사

매개변수 참조는 다음과 같습니다.

다음 옵션의 값은 긴 정수( 옵션 매개변수에 지정됨):

CURLOPT_INFILESIZE : 원격 사이트에 파일을 업로드할 때 이 옵션은 업로드 중인 파일의 크기를 PHP에 알려줍니다.

CURLOPT_VERBOSE: CURL이 예상치 못한 모든 이벤트를 보고하도록 하려면 이 옵션을 0이 아닌 값으로 설정하세요.

CURLOPT_HEADER: 출력에 헤더를 포함하려면 이 옵션을 0이 아닌 값으로 설정하세요.

CURLOPT_NOPROGRESS: PHP가 CURL 전송에 대한 진행률 표시줄을 표시하지 않도록 하려면 이 옵션을 0이 아닌 값으로 설정하세요.

참고: PHP는 자동으로 이 옵션을 0이 아닌 값으로 설정하므로 디버깅 목적으로만 이 옵션을 변경해야 합니다.

CURLOPT_NOBODY: 출력에 본문 부분을 포함하지 않으려면 이 옵션을 0이 아닌 값으로 설정하세요.

CURLOPT_FAILONERROR: 오류가 발생할 때(HTTP 코드가 300보다 크거나 같은 반환) PHP가 표시되지 않도록 하려면 이 옵션을 0이 아닌 값으로 설정하세요. 기본 동작은 일반 페이지를 반환하고 코드를 무시하는 것입니다.

CURLOPT_UPLOAD: PHP가 업로드를 준비하도록 하려면 이 옵션을 0이 아닌 값으로 설정하세요.

CURLOPT_POST: PHP가 일반 HTTP POST를 수행하도록 하려면 이 옵션을 0이 아닌 값으로 설정하세요. 이 POST는 HTML 양식에서 주로 사용되는 일반 application/x-www-from-urlencoded 유형입니다.

CURLOPT_FTPLISTONLY: 이 옵션을 0이 아닌 값으로 설정하면 PHP는 FTP의 디렉터리 이름을 나열합니다.

CURLOPT_FTPAPPEND: 이 옵션을 0이 아닌 값으로 설정하면 PHP는 원격 파일을 덮어쓰는 대신 적용합니다.

CURLOPT_NETRC: 이 옵션을 0이 아닌 값으로 설정하면 PHP는 ~./netrc 파일에서 연결하려는 원격 사이트의 사용자 이름과 비밀번호를 찾습니다.

CURLOPT_FOLLOWLOCATION: 이 옵션을 0이 아닌 값으로 설정합니다. 값('Location:'과 같은 헤더), 서버는 이를 HTTP 헤더의 일부로 보냅니다(이것은 재귀적이므로 PHP는 'Location:'과 같은 헤더를 보냅니다).

CURLOPT_PUT: HTTP를 사용하여 파일을 업로드하려면 이 옵션을 0이 아닌 값으로 설정하세요. 이 파일을 업로드하려면 CURLOPT_INFILE

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

CURLOPT_MUTE: 이 옵션을 0이 아닌 값으로 설정하면 PHP는 CURL 함수에 대해 완전히 침묵합니다.

CURLOPT_TIMEOUT: 긴 정수를 최대 시간(초)으로 설정합니다.

CURLOPT_LOW_SPEED_LIMIT: 전송되는 바이트 수를 제어하려면 긴 정수를 설정하세요.

CURLOPT_LOW_SPEED_TIME: 긴 정수를 설정하여 CURLOPT_LOW_SPEED_LIMIT에 지정된 바이트 수를 전송하는 데 몇 초가 소요되는지 제어합니다.

CURLOPT_RESUME_FROM: 바이트 오프셋 주소(전송하려는 시작 형식)가 포함된 긴 정수 매개변수를 전달합니다.

CURLOPT_SSLVERSION: SSL 버전이 포함된 긴 매개변수를 전달합니다. 기본적으로 PHP는 자체적으로 어려운 작업을 수행하므로 보안을 강화하려면 수동으로 설정해야 합니다.

CURLOPT_TIMECONDITION: 긴 매개변수를 전달하여 CURLOPT_TIMEVALUE 매개변수 처리 방법을 지정합니다. 이 매개변수를

TIMECOND_IFMODSINCE 또는 TIMECOND_ISUNMODSINCE로 설정할 수 있습니다. 이는 HTTP에만 해당됩니다.

CURLOPT_TIMEVALUE: 1970-1-1부터 지금까지의 시간(초)을 전달합니다. 이 시간은 CURLOPT_TIMEVALUE 옵션 또는 기본 TIMECOND_IFMODSINCE에 의해 지정된 값으로 사용됩니다.

다음 옵션의 값은 문자열로 처리됩니다.

CURLOPT_URL: PHP를 사용하여 검색하려는 URL 주소입니다. 컬_init() 함수를 사용하여 초기화하는 동안 이 옵션을 설정할 수도 있습니다.

CURLOPT_USERPWD: [사용자 이름]:[비밀번호] 형식으로 문자열을 전달하고 PHP를 사용하여 연결합니다.

CURLOPT_PROXYUSERPWD: [사용자 이름]:[비밀번호] 형식의 문자열을 전달하여 HTTP 프록시에 연결합니다.

CURLOPT_RANGE: 지정하려는 범위를 전달합니다. X 또는 Y가 제외된 'X-Y' 형식이어야 합니다. HTTP 전송은 쉼표(X-Y,N-M)로 구분된 여러 간격도 지원합니다.

CURLOPT_POSTFIELDS: 모든 데이터가 포함된 문자열을 HTTP "POST" 작업으로 전달합니다.

CURLOPT_REFERER: HTTP 요청에 '리퍼러' 헤더가 포함된 문자열입니다.

CURLOPT_USERAGENT: HTTP 요청에 'user-agent' 헤더가 포함된 문자열입니다.

CURLOPT_FTPPORT: ftp 'POST' 명령에 사용되는 IP 주소가 포함된 IP 주소를 전달합니다. 이 POST 명령은 원격 서버에 우리가 지정한 IP 주소에 연결하도록 지시합니다. 이 문자열은 IP 주소, 호스트 이름, 네트워크 인터페이스 이름(UNIX의 경우) 또는 '-'(시스템 기본 IP 주소 사용)일 수 있습니다.

CURLOPT_COOKIE: HTTP 쿠키가 포함된 헤더 연결을 전달합니다.

CURLOPT_SSLCERT: 인증서가 포함된 문자열을 PEM 형식으로 전달합니다.

CURLOPT_SSLCERTPASSWD: CURLOPT_SSLCERT 인증서를 사용하는 데 필요한 비밀번호가 포함된 비밀번호를 전달합니다.

CURLOPT_COOKIEFILE: 쿠키 데이터가 포함된 파일 이름이 포함된 문자열을 전달합니다. 이 쿠키 파일은 Netscape 형식일 수도 있고 파일에 저장된 HTTP 스타일 헤더 스택일 수도 있습니다.

CURLOPT_CUSTOMREQUEST: HTTP 요청 시 GET 또는 HEAD에서 사용할 문자를 전달합니다. HTTP 요청을 수행할 때 GET 또는 HEAD 대신 사용할 문자열을 전달합니다. 이는 더 모호한 다른 HTTP 요청을 수행하는 데 유용합니다.

참고: 확인하기 전에 서버가 명령을 지원하는 경우에는 이 작업을 수행하지 마세요. .

다음 옵션에는 파일 설명(fopen() 함수를 사용하여 얻음)이 필요합니다.

CURLOPT_FILE: 이 파일은 배치하고 전송하는 출력 파일입니다.

CURLOPT_INFILE: 이 파일은 입력 파일을 배치하고 전송하는 출력 파일이 됩니다.

CURLOPT_WRITEHEADER: 이 파일에는 출력의 헤더 부분이 포함되어 있습니다.

CURLOPT_STDERR: 이 파일에는 stderr 대신 오류가 기록되었습니다.

관련 권장사항:

위 내용은 PHP 컬_setopt 기능을 사용하는 방법은 무엇입니까? 컬_setopt 사용법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿