资源类型



范例



cURL



PHP Manual



预定义常量

下列常量由此扩展定义,且仅在此扩展编译入 PHP 或在运行时动态载入时可用。

Descriptions and uses for these constants are described within the curl_setopt() and curl_getinfo()


CURLOPT_AUTOREFERER (integer)

从PHP 5.1.0开始可用 CURLOPT_COOKIESESSION (integer)

从PHP 5.1.0开始可用 CURLOPT_DNS_USE_GLOBAL_CACHE (integer)


CURLOPT_DNS_CACHE_TIMEOUT (integer)


CURLOPT_FTP_SSL (integer)

从PHP 5.2.0开始可用

CURLFTPSSL_TRY (integer)

从PHP 5.2.0开始可用

CURLFTPSSL_ALL (integer)

从PHP 5.2.0开始可用

CURLFTPSSL_CONTROL (integer)

从PHP 5.2.0开始可用

CURLFTPSSL_NONE (integer)

从PHP 5.2.0开始可用

CURLOPT_PRIVATE (integer)

从PHP 5.2.4开始可用

CURLOPT_FTPSSLAUTH (integer)

从PHP 5.1.0开始可用

CURLOPT_PORT (integer)


CURLOPT_FILE (integer)


CURLOPT_INFILE (integer)


CURLOPT_INFILESIZE (integer)


CURLOPT_URL (integer)


CURLOPT_PROXY (integer)


CURLOPT_VERBOSE (integer)


CURLOPT_HEADER (integer)


CURLOPT_HTTPHEADER (integer)


CURLOPT_NOPROGRESS (integer)


CURLOPT_NOBODY (integer)


CURLOPT_FAILONERROR (integer)


CURLOPT_UPLOAD (integer)


CURLOPT_POST (integer)


CURLOPT_FTPLISTONLY (integer)


CURLOPT_FTPAPPEND (integer)


CURLOPT_FTP_CREATE_MISSING_DIRS (integer)


CURLOPT_NETRC (integer)


CURLOPT_FOLLOWLOCATION (integer)

当PHP配置open_basedir或 safe_mode被启用时,该常量不 可用。

CURLOPT_FTPASCII (integer)


CURLOPT_PUT (integer)


CURLOPT_MUTE (integer)


CURLOPT_USERPWD (integer)


CURLOPT_PROXYUSERPWD (integer)


CURLOPT_RANGE (integer)


CURLOPT_TIMEOUT (integer)


CURLOPT_TIMEOUT_MS (integer)


CURLOPT_TCP_NODELAY (integer)

从PHP 5.2.1开始可用

CURLOPT_POSTFIELDS (integer)


CURLOPT_PROGRESSFUNCTION (integer)

从PHP 5.3.0开始可用

CURLOPT_REFERER (integer)


CURLOPT_USERAGENT (integer)


CURLOPT_FTPPORT (integer)


CURLOPT_FTP_USE_EPSV (integer)


CURLOPT_LOW_SPEED_LIMIT (integer)


CURLOPT_LOW_SPEED_TIME (integer)


CURLOPT_RESUME_FROM (integer)


CURLOPT_COOKIE (integer)


CURLOPT_SSLCERT (integer)


CURLOPT_SSLCERTPASSWD (integer)


CURLOPT_WRITEHEADER (integer)


CURLOPT_SSL_VERIFYHOST (integer)


CURLOPT_COOKIEFILE (integer)


CURLOPT_SSLVERSION (integer)


CURLOPT_TIMECONDITION (integer)


CURLOPT_TIMEVALUE (integer)


CURLOPT_CUSTOMREQUEST (integer)


CURLOPT_STDERR (integer)


CURLOPT_TRANSFERTEXT (integer)


CURLOPT_RETURNTRANSFER (integer)


CURLOPT_QUOTE (integer)


CURLOPT_POSTQUOTE (integer)


CURLOPT_INTERFACE (integer)


CURLOPT_KRB4LEVEL (integer)


CURLOPT_HTTPPROXYTUNNEL (integer)


CURLOPT_FILETIME (integer)


CURLOPT_WRITEFUNCTION (integer)


CURLOPT_READFUNCTION (integer)


CURLOPT_PASSWDFUNCTION (integer)


CURLOPT_HEADERFUNCTION (integer)


CURLOPT_MAXREDIRS (integer)


CURLOPT_MAXCONNECTS (integer)


CURLOPT_CLOSEPOLICY (integer)


CURLOPT_FRESH_CONNECT (integer)


CURLOPT_FORBID_REUSE (integer)


CURLOPT_RANDOM_FILE (integer)


CURLOPT_EGDSOCKET (integer)


CURLOPT_CONNECTTIMEOUT (integer)


CURLOPT_CONNECTTIMEOUT_MS (integer)


CURLOPT_SSL_VERIFYPEER (integer)


CURLOPT_CAINFO (integer)


CURLOPT_CAPATH (integer)


CURLOPT_COOKIEJAR (integer)


CURLOPT_SSL_CIPHER_LIST (integer)


CURLOPT_BINARYTRANSFER (integer)


CURLOPT_NOSIGNAL (integer)


CURLOPT_PROXYTYPE (integer)


CURLOPT_BUFFERSIZE (integer)


CURLOPT_HTTPGET (integer)


CURLOPT_HTTP_VERSION (integer)


CURLOPT_SSLKEY (integer)


CURLOPT_SSLKEYTYPE (integer)


CURLOPT_SSLKEYPASSWD (integer)


CURLOPT_SSLENGINE (integer)


CURLOPT_SSLENGINE_DEFAULT (integer)


CURLOPT_SSLCERTTYPE (integer)


CURLOPT_CRLF (integer)


CURLOPT_ENCODING (integer)


CURLOPT_PROXYPORT (integer)


CURLOPT_UNRESTRICTED_AUTH (integer)


CURLOPT_FTP_USE_EPRT (integer)


CURLOPT_HTTP200ALIASES (integer)


CURLOPT_HTTPAUTH (integer)


CURLAUTH_BASIC (integer)


CURLAUTH_DIGEST (integer)


CURLAUTH_GSSNEGOTIATE (integer)


CURLAUTH_NTLM (integer)


CURLAUTH_ANY (integer)


CURLAUTH_ANYSAFE (integer)


CURLOPT_PROXYAUTH (integer)


CURLCLOSEPOLICY_LEAST_RECENTLY_USED (integer)


CURLCLOSEPOLICY_LEAST_TRAFFIC (integer)


CURLCLOSEPOLICY_SLOWEST (integer)


CURLCLOSEPOLICY_CALLBACK (integer)


CURLCLOSEPOLICY_OLDEST (integer)


CURLINFO_PRIVATE (integer)

从PHP 5.2.4开始可用

CURLINFO_EFFECTIVE_URL (integer)


CURLINFO_HTTP_CODE (integer)


CURLINFO_HEADER_OUT (integer)

从PHP 5.1.3开始可用

CURLINFO_HEADER_SIZE (integer)


CURLINFO_REQUEST_SIZE (integer)


CURLINFO_TOTAL_TIME (integer)


CURLINFO_NAMELOOKUP_TIME (integer)


CURLINFO_CONNECT_TIME (integer)


CURLINFO_PRETRANSFER_TIME (integer)


CURLINFO_SIZE_UPLOAD (integer)


CURLINFO_SIZE_DOWNLOAD (integer)


CURLINFO_SPEED_DOWNLOAD (integer)


CURLINFO_SPEED_UPLOAD (integer)


CURLINFO_FILETIME (integer)


CURLINFO_SSL_VERIFYRESULT (integer)


CURLINFO_CONTENT_LENGTH_DOWNLOAD (integer)


CURLINFO_CONTENT_LENGTH_UPLOAD (integer)


CURLINFO_STARTTRANSFER_TIME (integer)


CURLINFO_CONTENT_TYPE (integer)


CURLINFO_REDIRECT_TIME (integer)


CURLINFO_REDIRECT_COUNT (integer)


CURL_TIMECOND_IFMODSINCE (integer)


CURL_TIMECOND_IFUNMODSINCE (integer)


CURL_TIMECOND_LASTMOD (integer)


CURL_VERSION_IPV6 (integer)


CURL_VERSION_KERBEROS4 (integer)


CURL_VERSION_SSL (integer)


CURL_VERSION_LIBZ (integer)


CURLVERSION_NOW (integer)


CURLE_OK (integer)


CURLE_UNSUPPORTED_PROTOCOL (integer)


CURLE_FAILED_INIT (integer)


CURLE_URL_MALFORMAT (integer)


CURLE_URL_MALFORMAT_USER (integer)


CURLE_COULDNT_RESOLVE_PROXY (integer)


CURLE_COULDNT_RESOLVE_HOST (integer)


CURLE_COULDNT_CONNECT (integer)


CURLE_FTP_WEIRD_SERVER_REPLY (integer)


CURLE_FTP_ACCESS_DENIED (integer)


CURLE_FTP_USER_PASSWORD_INCORRECT (integer)


CURLE_FTP_WEIRD_PASS_REPLY (integer)


CURLE_FTP_WEIRD_USER_REPLY (integer)


CURLE_FTP_WEIRD_PASV_REPLY (integer)


CURLE_FTP_WEIRD_227_FORMAT (integer)


CURLE_FTP_CANT_GET_HOST (integer)


CURLE_FTP_CANT_RECONNECT (integer)


CURLE_FTP_COULDNT_SET_BINARY (integer)


CURLE_PARTIAL_FILE (integer)


CURLE_FTP_COULDNT_RETR_FILE (integer)


CURLE_FTP_WRITE_ERROR (integer)


CURLE_FTP_QUOTE_ERROR (integer)


CURLE_HTTP_NOT_FOUND (integer)


CURLE_WRITE_ERROR (integer)


CURLE_MALFORMAT_USER (integer)


CURLE_FTP_COULDNT_STOR_FILE (integer)


CURLE_READ_ERROR (integer)


CURLE_OUT_OF_MEMORY (integer)


CURLE_OPERATION_TIMEOUTED (integer)


CURLE_FTP_COULDNT_SET_ASCII (integer)


CURLE_FTP_PORT_FAILED (integer)


CURLE_FTP_COULDNT_USE_REST (integer)


CURLE_FTP_COULDNT_GET_SIZE (integer)


CURLE_HTTP_RANGE_ERROR (integer)


CURLE_HTTP_POST_ERROR (integer)


CURLE_SSL_CONNECT_ERROR (integer)


CURLE_FTP_BAD_DOWNLOAD_RESUME (integer)


CURLE_FILE_COULDNT_READ_FILE (integer)


CURLE_LDAP_CANNOT_BIND (integer)


CURLE_LDAP_SEARCH_FAILED (integer)


CURLE_LIBRARY_NOT_FOUND (integer)


CURLE_FUNCTION_NOT_FOUND (integer)


CURLE_ABORTED_BY_CALLBACK (integer)


CURLE_BAD_FUNCTION_ARGUMENT (integer)


CURLE_BAD_CALLING_ORDER (integer)


CURLE_HTTP_PORT_FAILED (integer)


CURLE_BAD_PASSWORD_ENTERED (integer)


CURLE_TOO_MANY_REDIRECTS (integer)


CURLE_UNKNOWN_TELNET_OPTION (integer)


CURLE_TELNET_OPTION_SYNTAX (integer)


CURLE_OBSOLETE (integer)


CURLE_SSL_PEER_CERTIFICATE (integer)


CURLE_GOT_NOTHING (integer)


CURLE_SSL_ENGINE_NOTFOUND (integer)


CURLE_SSL_ENGINE_SETFAILED (integer)


CURLE_SEND_ERROR (integer)


CURLE_RECV_ERROR (integer)


CURLE_SHARE_IN_USE (integer)


CURLE_SSL_CERTPROBLEM (integer)


CURLE_SSL_CIPHER (integer)


CURLE_SSL_CACERT (integer)


CURLE_BAD_CONTENT_ENCODING (integer)


CURLE_LDAP_INVALID_URL (integer)


CURLE_FILESIZE_EXCEEDED (integer)


CURLE_FTP_SSL_FAILED (integer)


CURLFTPAUTH_DEFAULT (integer)

从PHP 5.1.0开始可用

CURLFTPAUTH_SSL (integer)

从PHP 5.1.0开始可用

CURLFTPAUTH_TLS (integer)

从PHP 5.1.0开始可用

CURLPROXY_HTTP (integer)


CURLPROXY_SOCKS5 (integer)


CURL_NETRC_OPTIONAL (integer)


CURL_NETRC_IGNORED (integer)


CURL_NETRC_REQUIRED (integer)


CURL_HTTP_VERSION_NONE (integer)


CURL_HTTP_VERSION_1_0 (integer)


CURL_HTTP_VERSION_1_1 (integer)


CURLM_CALL_MULTI_PERFORM (integer)


CURLM_OK (integer)


CURLM_BAD_HANDLE (integer)


CURLM_BAD_EASY_HANDLE (integer)


CURLM_OUT_OF_MEMORY (integer)


CURLM_INTERNAL_ERROR (integer)


CURLMSG_DONE (integer)


User Contributed Notes



Kelvin Lim  05-Nov-2008 05:46

Note that CURLAUTH_NTLM refers specifically to NTLMv1 authentication.  As of this writing, the cURL library does not yet support NTLMv2.


<a name="76914" "="" style="color: rgb(0, 0, 153); background-color: transparent;">

Ron  04-Aug-2007 11:48

<? 
 /* 
 * Author: Ron 
 * Released: August 4, 2007 
 * Description: An example of the disguise_curl() function in order to grab contents from a website while remaining fully camouflaged by using a fake user agent and fake headers. 
 */ 

 $url = 'http://www.ericgiguere.com/tools/http-header-viewer.html'; 

 // disguises the curl using fake headers and a fake user agent. 
 function disguise_curl($url) 
 { 
   $curl = curl_init(); 

   // Setup headers - I used the same headers from Firefox version 2.0.0.6 
   // below was split up because php.net said the line was too long. :/ 
   $header[0] = "Accept: text/xml,application/xml,application/xhtml+xml,"; 
   $header[0] .= "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5"; 
   $header[] = "Cache-Control: max-age=0"; 
   $header[] = "Connection: keep-alive"; 
   $header[] = "Keep-Alive: 300"; 
   $header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7"; 
   $header[] = "Accept-Language: en-us,en;q=0.5"; 
   $header[] = "Pragma: "; // browsers keep this blank. 

   curl_setopt($curl, CURLOPT_URL, $url); 
   curl_setopt($curl, CURLOPT_USERAGENT, 'Googlebot/2.1 (+http://www.google.com/bot.html)'); 
   curl_setopt($curl, CURLOPT_HTTPHEADER, $header); 
   curl_setopt($curl, CURLOPT_REFERER, 'http://www.google.com'); 
   curl_setopt($curl, CURLOPT_ENCODING, 'gzip,deflate'); 
   curl_setopt($curl, CURLOPT_AUTOREFERER, true); 
   curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
   curl_setopt($curl, CURLOPT_TIMEOUT, 10); 

   $html = curl_exec($curl); // execute the curl command 
   curl_close($curl); // close the connection 

   return $html; // and finally, return $html 
 } 

 // uses the function and displays the text off the website 
 $text = disguise_curl($url); 
 echo $text; 
 ?> 

 ~Ron



资源类型



范例



cURL



PHP Manual


http://www.php.net/manual/zh/function.curl-getinfo.php



mixed  curl_getinfo (  resource $ch [,  int $opt = 0



获取最后一次传输的相关信息。


参数 ¶


ch


由 curl_init()


opt


这个参数可能是以下常量之一:

CURLINFO_EFFECTIVE_URLCURLINFO_HTTP_CODECURLINFO_FILETIMECURLINFO_TOTAL_TIMECURLINFO_NAMELOOKUP_TIMECURLINFO_CONNECT_TIMECURLINFO_PRETRANSFER_TIMECURLINFO_STARTTRANSFER_TIMECURLINFO_REDIRECT_TIMECURLINFO_SIZE_UPLOADCURLINFO_SIZE_DOWNLOADCURLINFO_SPEED_DOWNLOADCURLINFO_SPEED_UPLOADCURLINFO_HEADER_SIZECURLINFO_HEADER_OUTCURLINFO_REQUEST_SIZECURLINFO_SSL_VERIFYRESULT

  •  - 通过设置

CURLOPT_SSL_VERIFYPEER

  • 返回的SSL证书验证请求的结果

CURLINFO_CONTENT_LENGTH_DOWNLOAD

  •  - 从Content-Length:

CURLINFO_CONTENT_LENGTH_UPLOADCURLINFO_CONTENT_TYPE

  •  - 下载内容的Content-Type:值,NULL表示服务器没有发送有效的Content-Type: