(PHP 4 >= 4.0.2, PHP 5, PHP 7)
curl_setopt — ���� cURL ����ѡ��
ch
�� curl_init() ���ص� cURL �����
option
��Ҫ���õ�CURLOPT_XXXѡ�
value
��������option
ѡ���ϵ�ֵ��
���� option
������ value
Ӧ�ñ����ó� bool ���ͣ�
ѡ�� | �� value ����Ϊ |
��ע |
---|---|---|
CURLOPT_AUTOREFERER |
TRUE ʱ������ Location: �ض���ʱ���Զ����� header �е�Referer:��Ϣ��
|
|
CURLOPT_BINARYTRANSFER |
��Ϊ TRUE ���������� CURLOPT_RETURNTRANSFER ʱ������ԭ���ģ�Raw�������
|
�� PHP 5.1.3 ��ʼ����ѡ�����Ч����ʹ��
CURLOPT_RETURNTRANSFER �����ǻ᷵��ԭ���ģ�Raw�����ݡ�
|
CURLOPT_COOKIESESSION |
��Ϊ TRUE ʱ�������µ�һ�� cookie �Ự������ǿ�� libcurl ����֮ǰ�Ựʱ������� cookie��
libcurl ��Ĭ��״���������Ƿ�Ϊ�Ự�����ᴢ�桢�������� cookie���Ự cookie ��ָû�й���ʱ�䣬ֻ����ڻỰ֮�С�
|
|
CURLOPT_CERTINFO |
TRUE ���ڰ�ȫ����ʱ��� SSL ֤����Ϣ�� STDERR��
|
�� cURL 7.19.1 ����ӡ�
PHP 5.3.2 ������
��Ҫ���� CURLOPT_VERBOSE ����Ч��
|
CURLOPT_CONNECT_ONLY |
TRUE ���ÿ�ִ��������Ҫ�Ĵ�����֤�����ӹ��̣������������ݡ���ѡ������
HTTP��SMTP �� POP3��
|
�� 7.15.2 ����ӡ� PHP 5.5.0 ����Ч�� |
CURLOPT_CRLF |
����ʱ��Unix�Ļ��з�ת���ɻس����з��� | |
CURLOPT_DNS_USE_GLOBAL_CACHE |
TRUE ������һ��ȫ�ֵ�DNS���档��ѡ����̰߳�ȫ�ģ�Ĭ���ѿ�����
|
|
CURLOPT_FAILONERROR |
�� HTTP ״̬����ڵ��� 400��TRUE ������ʾ�������顣 Ĭ������½�����ҳ�棬���� HTTP ���롣
|
|
CURLOPT_SSL_FALSESTART |
TRUE ���� TLS False Start ��һ�� TLS �����Ż���ʽ��
|
cURL 7.42.0 ����ӡ��� PHP 7.0.7 ����Ч�� |
CURLOPT_FILETIME |
TRUE ʱ���᳢�Ի�ȡԶ���ĵ��е���ʱ����Ϣ��
��Ϣ��ͨ��curl_getinfo()������CURLINFO_FILETIME ѡ���ȡ��
|
|
CURLOPT_FOLLOWLOCATION |
TRUE ʱ������ݷ��������� HTTP ͷ�е� "Location: " �ض���ע�⣺���ǵݹ�ģ�"Location: " ���ͼ��ξ��ض��Σ����������� CURLOPT_MAXREDIRS ����������ض������������
|
|
CURLOPT_FORBID_REUSE |
TRUE ����ɽ����Ժ�ǿ����ȷ�ĶϿ����ӣ����������ӳ������á�
|
|
CURLOPT_FRESH_CONNECT |
TRUE ǿ�ƻ�ȡһ���µ����ӣ������ǻ����е����ӡ�
|
|
CURLOPT_FTP_USE_EPRT |
TRUE ʱ���� FTP ����ʱ��ʹ�� EPRT (�� LPRT)��� ����Ϊ FALSE ʱ���� EPRT �� LPRT������ʹ��PORT ���
|
|
CURLOPT_FTP_USE_EPSV |
TRUE ʱ����FTP��������У��ص� PASV ģʽǰ���ȳ��� EPSV �������Ϊ FALSE ʱ���� EPSV��
|
|
CURLOPT_FTP_CREATE_MISSING_DIRS |
TRUE ʱ���� ftp ���������ڵ�Ŀ¼ʱ����������
|
|
CURLOPT_FTPAPPEND |
TRUE Ϊ��д���ļ��������Ǹ��ǡ�
|
|
CURLOPT_TCP_NODELAY |
TRUE ʱ���� TCP �� Nagle �㷨�����Ǽ��������ϵ�С��������
|
PHP 5.2.1 ��Ч������ʱ��Ҫ libcurl 7.11.2 �����ϡ� |
CURLOPT_FTPASCII |
CURLOPT_TRANSFERTEXT �ı�����
|
|
CURLOPT_FTPLISTONLY |
TRUE ʱֻ�г� FTP Ŀ¼�����֡�
|
|
CURLOPT_HEADER |
����ʱ�Ὣͷ�ļ�����Ϣ��Ϊ����������� | |
CURLINFO_HEADER_OUT |
TRUE ʱ�پ���������ַ�����
|
�� PHP 5.1.3 ��ʼ���á�CURLINFO_ ��ǰ�������(intentional)��
|
CURLOPT_HTTPGET |
TRUE ʱ������ HTTP �� method Ϊ GET������Ĭ���� GET������ֻ�� method ����ʱ����Ҫ���ѡ�
|
|
CURLOPT_HTTPPROXYTUNNEL |
TRUE ��ͨ��ָ���� HTTP ���������䡣
|
|
CURLOPT_MUTE |
TRUE ʱ����ȫ��Ĭ�������Ǻ� cURL ������
|
�� cURL 7.15.5 ���Ƴ�������ʹ�� CURLOPT_RETURNTRANSFER ��Ϊ���棩 |
CURLOPT_NETRC |
TRUE ʱ�������ӽ���ʱ������~/.netrc�ļ���ȡ�û���������������Զ��վ�㡣
|
|
CURLOPT_NOBODY |
TRUE ʱ������� BODY ���֡�ͬʱ Mehtod ����� HEAD����Ϊ FALSE ʱ������ GET��
|
|
CURLOPT_NOPROGRESS |
|
|
CURLOPT_NOSIGNAL |
TRUE ʱ�������е� cURL ���ݸ� PHP ���е��źš��� SAPI ���̴߳���ʱ���Ĭ�����ã����Գ�ʱѡ������ʹ�á�
|
cURL 7.10ʱ�����롣 |
CURLOPT_PATH_AS_IS |
TRUE ������ dot dot sequences ���� ../ ��
|
cURL 7.42.0 ʱ�����롣 PHP 7.0.7 ����Ч�� |
CURLOPT_PIPEWAIT |
TRUE ��ȴ� pipelining/multiplexing��
|
cURL 7.43.0 ʱ�����롣 PHP 7.0.7 ����Ч�� |
CURLOPT_POST |
TRUE ʱ�ᷢ�� POST ��������Ϊ��application/x-www-form-urlencoded���� HTML ���ύʱ�����һ�֡�
|
|
CURLOPT_PUT |
TRUE ʱ���� HTTP �����ļ���Ҫ�� PUT ���ļ������� CURLOPT_INFILE ��CURLOPT_INFILESIZE �����á�
|
|
CURLOPT_RETURNTRANSFER |
TRUE ��curl_exec()��ȡ����Ϣ���ַ������أ�������ֱ�������
|
|
CURLOPT_SAFE_UPLOAD |
TRUE ���� @ ǰ�� CURLOPT_POSTFIELDS �з����ļ���
��ζ�� @ �������ֶ��а�ȫ��ʹ���ˡ�
��ʹ�� CURLFile ��Ϊ�ϴ��Ĵ��档
|
PHP 5.5.0 ����ӣ�Ĭ��ֵ FALSE ��
PHP 5.6.0 ��Ĭ��ֵΪ TRUE ��.
PHP 7 ɾ���˴�ѡ� ����ʹ�� CURLFile interface ���ϴ��ļ���
|
CURLOPT_SASL_IR |
TRUE �������յ��װ�(first packet)���ͳ�ʼ����Ӧ(initial response)��
|
cURL 7.31.10 ����ӣ��� PHP 7.0.7 ����Ч�� |
CURLOPT_SSL_ENABLE_ALPN |
FALSE ���� SSL �����е� ALPN (��� SSL ��˵�
libcurl �ڽ�֧��) ����Э�̵� http2��
|
cURL 7.36.0 �����ӣ� PHP 7.0.7 ����Ч�� |
CURLOPT_SSL_ENABLE_NPN |
FALSE ���� SSL �����е� NPN(��� SSL ��˵�
libcurl �ڽ�֧��)������Э�̵� http2��
|
cURL 7.36.0 �����ӣ� PHP 7.0.7 ����Ч�� |
CURLOPT_SSL_VERIFYPEER |
FALSE ��ֹ cURL ��֤�Ե�֤�飨peer's
certificate����Ҫ��֤�Ľ���֤������� CURLOPT_CAINFO ѡ�������ã����� CURLOPT_CAPATH ������֤��Ŀ¼��
|
��cURL 7.10��ʼĬ��Ϊ TRUE ���� cURL 7.10��ʼĬ�ϰ�װ��
|
CURLOPT_SSL_VERIFYSTATUS |
TRUE ��֤֤��״̬��
|
cURL 7.41.0 ����ӣ� PHP 7.0.7 ����Ч�� |
CURLOPT_TCP_FASTOPEN |
TRUE ���� TCP Fast Open��
|
cURL 7.49.0 ����ӣ� PHP 7.0.7 ����Ч�� |
CURLOPT_TFTP_NO_OPTIONS |
TRUE ������ TFTP �� options ����
|
�� cURL 7.48.0 ��ӣ� PHP 7.0.7 ����Ч�� |
CURLOPT_TRANSFERTEXT |
TRUE �� FTP ����ʹ�� ASCII ģʽ������LDAP�����������ı���Ϣ���� HTML���� Windows ϵͳ�ϣ�ϵͳ����� STDOUT ���óɶ����� ģʽ��
|
|
CURLOPT_UNRESTRICTED_AUTH |
TRUE ��ʹ��CURLOPT_FOLLOWLOCATION �ض��� header �еĶ�� location ʱ���������û�����������Ϣ�������������Ѹı䡣
|
|
CURLOPT_UPLOAD |
TRUE ���ϴ���
|
|
CURLOPT_VERBOSE |
TRUE ��������е���Ϣ��д�뵽STDERR������CURLOPT_STDERR ��ָ�����ļ���
|
���� option
��value
Ӧ�ñ����ó� integer��
ѡ�� | ����value Ϊ |
��ע |
---|---|---|
CURLOPT_BUFFERSIZE |
ÿ�ζ���Ļ���ijߴ硣��Ȼ����֤ÿ�ζ�����ȫ��������ߴ硣 | ��cURL 7.10�б����롣 |
CURLOPT_CLOSEPOLICY |
CURLCLOSEPOLICY_* �е�һ����
|
PHP 5.6.0 ���Ƴ��� |
CURLOPT_CONNECTTIMEOUT |
�ڳ�������ʱ�ȴ�������������Ϊ0�������ȴ��� | |
CURLOPT_CONNECTTIMEOUT_MS |
�������ӵȴ���ʱ�䣬�Ժ���Ϊ��λ������Ϊ0�������ȴ��� ��� libcurl ����ʱʹ��ϵͳ�������ƽ������� standard system name resolver�����Dz��ֵ������Ծ�ʹ������Ƶij�ʱ�����������С��ʱʱ�仹��һ���ӡ� | �� cURL 7.16.2 �б����롣�� PHP 5.2.3 ��ʼ���á� |
CURLOPT_DNS_CACHE_TIMEOUT |
�������ڴ��л��� DNS ��ʱ�䣬Ĭ��Ϊ120�루�����ӣ��� | |
CURLOPT_EXPECT_100_TIMEOUT_MS |
��ʱԤ�ƣ� 100�����ڵ� continue ��Ӧ Ĭ��Ϊ 1000 ���롣 | cURL 7.36.0 ����ӣ��� PHP 7.0.7 ��Ч�� |
CURLOPT_FTPSSLAUTH |
FTP��֤��ʽ�����õ�ʱ��CURLFTPAUTH_SSL (���ȳ���SSL)��CURLFTPAUTH_TLS (���ȳ���TLS)��CURLFTPAUTH_DEFAULT (��cURL �Ը�������)�� | �� cURL 7.12.2 �б����롣 |
CURLOPT_HEADEROPT |
How to deal with headers. One of the following constants:
CURLHEADER_UNIFIED : the headers specified in
CURLOPT_HTTPHEADER will be used in requests
both to servers and proxies. With this option enabled,
CURLOPT_PROXYHEADER will not have any effect.
CURLHEADER_SEPARATE : makes
CURLOPT_HTTPHEADER headers only get sent to
a server and not to a proxy. Proxy headers must be set with
CURLOPT_PROXYHEADER to get used. Note that if
a non-CONNECT request is sent to a proxy, libcurl will send both
server headers and proxy headers. When doing CONNECT, libcurl will
send CURLOPT_PROXYHEADER headers only to the
proxy and then CURLOPT_HTTPHEADER headers
only to the server.
Defaults to CURLHEADER_SEPARATE as of cURL
7.42.1, and CURLHEADER_UNIFIED before.
|
Added in cURL 7.37.0. Available since PHP 7.0.7. |
CURLOPT_HTTP_VERSION |
CURL_HTTP_VERSION_NONE (Ĭ��ֵ���� cURL �Լ��ж�ʹ���ĸ��汾)��CURL_HTTP_VERSION_1_0 (ǿ��ʹ�� HTTP/1.0)��CURL_HTTP_VERSION_1_1 (ǿ��ʹ�� HTTP/1.1)��
|
|
CURLOPT_HTTPAUTH |
ʹ�õ� HTTP ��֤������ѡ���У�
����ʹ�� | λ��(OR)��������϶��ֵ��cURL ���÷�����ѡ����֧�ֵķ�������ѡ����õ��Ǹ���
|
|
CURLOPT_INFILESIZE |
ϣ������Զ��վ����ļ��ߴ磬�ֽ�(byte)Ϊ��λ��
ע���������ѡ����ֹ libcurl ����������ݣ�ȷ�з���ʲôȡ���� CURLOPT_READFUNCTION ��
|
|
CURLOPT_LOW_SPEED_LIMIT |
�����ٶȣ�ÿ���ֽڣ�bytes����������CURLOPT_LOW_SPEED_TIME ����ͳ���Ƿ���̫����ȡ�����䡣
|
|
CURLOPT_LOW_SPEED_TIME |
�������ٶ�С��CURLOPT_LOW_SPEED_LIMIT ʱ(bytes/sec)��PHP���ж��Ƿ���̫����ȡ�����䡣
|
|
CURLOPT_MAXCONNECTS |
�������������������ﵽ����ʱ����ͨ��CURLOPT_CLOSEPOLICY ����Ӧ�ùر���Щ���ӡ�
|
|
CURLOPT_MAXREDIRS |
ָ������ HTTP �ض�����������ѡ���Ǻ�CURLOPT_FOLLOWLOCATION һ��ʹ�õġ�
|
|
CURLOPT_PORT |
����ָ�����Ӷ˿ڡ� | |
CURLOPT_POSTREDIR |
λ���룬 1 (301 �����ض���), 2 (302 Found)
�� 4 (303 See Other)
���� CURLOPT_FOLLOWLOCATION ʱ��ʲô�������Ҫ�ٴ� HTTP POST ���ض�����ַ��
|
cURL 7.19.1 ����ӣ�PHP 5.3.2 ��ʼ���á� |
CURLOPT_PROTOCOLS |
���õ�Э��ѡ��Ϊ��
|
�� 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_SOCKS4 ��
CURLPROXY_SOCKS5 ��
CURLPROXY_SOCKS4A ��
CURLPROXY_SOCKS5_HOSTNAME ��
|
�� cURL 7.10 �б����롣 |
CURLOPT_REDIR_PROTOCOLS |
CURLPROTO_* ֵ��λ���롣��������ã�λ��������� libcurl �� CURLOPT_FOLLOWLOCATION ����ʱ��ʹ�õ�Э�顣
Ĭ������� FILE �� SCP ������Э�顣
��� 7.19.4 ǰ�İ汾������֧������֧�ֵ�Э�鲻ͬ������Э�鳣���������CURLOPT_PROTOCOLS ��
|
�� cURL 7.19.4 �б����롣 |
CURLOPT_RESUME_FROM |
�ڻָ�����ʱ�������ֽ�Ϊ��λ��ƫ�����������ϵ��������� | |
CURLOPT_SSL_OPTIONS |
Set SSL behavior options, which is a bitmask of any of the following constants:
CURLSSLOPT_ALLOW_BEAST : do not attempt to use
any workarounds for a security flaw in the SSL3 and TLS1.0 protocols.
CURLSSLOPT_NO_REVOKE : disable certificate
revocation checks for those SSL backends where such behavior is
present.
|
Added in cURL 7.25.0. Available since PHP 7.0.7. |
CURLOPT_SSL_VERIFYHOST |
����Ϊ 1 �Ǽ�������SSL֤�����Ƿ����һ��������(common name)������ע��������(Common Name)һ������������д�㽫Ҫ����SSL֤������� (domain)��������(sub domain)�� ���ó� 2�����鹫�����Ƿ���ڣ������Ƿ����ṩ��������ƥ�䡣 0 Ϊ��������ơ� �����������У����ֵӦ���� 2��Ĭ��ֵ���� | ֵ 1 ��֧���� cURL 7.28.1 �б�ɾ���ˡ� |
CURLOPT_SSLVERSION |
CURL_SSLVERSION_DEFAULT (0),
CURL_SSLVERSION_TLSv1 (1),
CURL_SSLVERSION_SSLv2 (2),
CURL_SSLVERSION_SSLv3 (3),
CURL_SSLVERSION_TLSv1_0 (4),
CURL_SSLVERSION_TLSv1_1 (5) ��
CURL_SSLVERSION_TLSv1_2 (6) �е�����һ����
|
|
CURLOPT_STREAM_WEIGHT |
���� stream weight ��ֵ ( 1 �� 256 ֮�������). | cURL 7.46.0 ����ӣ��� PHP 7.0.7 ����Ч�� |
CURLOPT_TIMECONDITION |
������ζԴ� CURLOPT_TIMEVALUE ��
ʹ�� CURL_TIMECOND_IFMODSINCE ������ҳ�� CURLOPT_TIMEVALUE ֮���ģ��ŷ���ҳ�档û������ "304 Not Modified" ͷ������������ CURLOPT_HEADER Ϊ TRUE ��CURL_TIMECOND_IFUNMODSINCE �����෴��Ч����
Ĭ��Ϊ CURL_TIMECOND_IFMODSINCE ��
|
|
CURLOPT_TIMEOUT |
���� cURL ����ִ�е�������� | |
CURLOPT_TIMEOUT_MS |
����cURL����ִ�е���������� ��� libcurl ����ʱʹ��ϵͳ�������ƽ������� standard system name resolver�����Dz��ֵ������Ծ�ʹ������Ƶij�ʱ�����������С��ʱʱ�仹��һ���ӡ� | �� cURL 7.16.2 �б����롣�� PHP 5.2.3 ���ʹ�á� |
CURLOPT_TIMEVALUE |
�������� 1970��1��1�տ�ʼ�����ʱ��ᱻ CURLOPT_TIMECONDITION ʹ��Ĭ��ʹ��CURL_TIMECOND_IFMODSINCE ��
|
|
CURLOPT_MAX_RECV_SPEED_LARGE |
��������ٶȳ����˴��ٶ�(��ÿ���ֽ�����ͳ��) ��������������ۼƵ�ƽ����������ͻή�ٵ����������ֵ��Ĭ�ϲ����١� | cURL 7.15.5 ����ӣ� PHP 5.4.0 ��Ч�� |
CURLOPT_MAX_SEND_SPEED_LARGE |
����ϴ����ٶȳ����˴��ٶ�(��ÿ���ֽ�����ͳ��)��������������ۼƵ�ƽ���� ������ͻή�ٵ����������ֵ��Ĭ�ϲ����١� | cURL 7.15.5 ����ӣ� PHP 5.4.0 ��Ч�� |
CURLOPT_SSH_AUTH_TYPES |
A bitmask consisting of one or more of
CURLSSH_AUTH_PUBLICKEY ,
CURLSSH_AUTH_PASSWORD ,
CURLSSH_AUTH_HOST ,
CURLSSH_AUTH_KEYBOARD . Set to
CURLSSH_AUTH_ANY to let libcurl pick one.
|
cURL 7.16.1 ����ӡ� |
CURLOPT_IPRESOLVE |
�������ѡ����Ҫ������ IP ��ַ���ֻ���ڵ�ַ�ж��� ip ����ʱ������ã����Ե�ֵ�У�
CURL_IPRESOLVE_WHATEVER ��
CURL_IPRESOLVE_V4 ��
CURL_IPRESOLVE_V6 ��Ĭ����
CURL_IPRESOLVE_WHATEVER ��
|
cURL 7.10.8 ����ӡ� |
CURLOPT_FTP_FILEMETHOD |
���� curl ʹ�����ַ�ʽ����ȡ FTP(s) �������ϵ��ļ������ܵ�ֵ�У�
CURLFTPMETHOD_MULTICWD ��
CURLFTPMETHOD_NOCWD ��
CURLFTPMETHOD_SINGLECWD ��
|
cURL 7.15.1 ����ӣ� PHP 5.3.0 ����Ч�� |
�����������Щoption
��value
Ӧ�ñ����ó� string��
ѡ�� | ���õ�value |
��ע |
---|---|---|
CURLOPT_CAINFO |
һ��������1�����������÷������֤��֤����ļ�����������������ں�CURLOPT_SSL_VERIFYPEER һ��ʹ��ʱ�������塣 .
|
������Ҫ����·���� |
CURLOPT_CAPATH |
һ�������Ŷ��CA֤���Ŀ¼�����ѡ���Ǻ�CURLOPT_SSL_VERIFYPEER һ��ʹ�õġ�
|
|
CURLOPT_COOKIE |
�趨 HTTP ������"Cookie: "���ֵ����ݡ���� cookie �÷ֺŷָ����ֺź��һ���ո�(���磬 "fruit=apple; colour=red")�� | |
CURLOPT_COOKIEFILE |
���� cookie ���ݵ��ļ�����cookie �ļ��ĸ�ʽ������ Netscape ��ʽ������ֻ�Ǵ� HTTP ͷ��������ļ�������ļ����ǿյģ�������� cookie���� cookie �Ĵ����Ծ����á� | |
CURLOPT_COOKIEJAR |
���ӽ������磬���� curl_close ���� cookie ��Ϣ���ļ��� | |
CURLOPT_CUSTOMREQUEST |
HTTP ����ʱ��ʹ���Զ���� Method ������"GET"��"HEAD"���� "DELETE" �������������ε� HTTP �������á� ��Чֵ�� "GET"��"POST"��"CONNECT"�ȵȣ�Ҳ����˵����Ҫ�������������� HTTP ������������"GET /index.html HTTP/1.0\r\n\r\n"�Dz���ȷ�ġ�
|
|
CURLOPT_DEFAULT_PROTOCOL |
URL����Э���ʱ��ʹ�õ�Ĭ��Э�顣 |
cURL 7.45.0 ����ӣ��� PHP 7.0.7 ����Ч�� |
CURLOPT_DNS_INTERFACE |
Set the name of the network interface that the DNS resolver should bind to. This must be an interface name (not an address). |
Added in cURL 7.33.0. Available since PHP 7.0.7. |
CURLOPT_DNS_LOCAL_IP4 |
Set the local IPv4 address that the resolver should bind to. The argument should contain a single numerical IPv4 address as a string. |
Added in cURL 7.33.0. Available since PHP 7.0.7. |
CURLOPT_DNS_LOCAL_IP6 |
Set the local IPv6 address that the resolver should bind to. The argument should contain a single numerical IPv6 address as a string. |
Added in cURL 7.33.0. Available since PHP 7.0.7. |
CURLOPT_EGDSOCKET |
����CURLOPT_RANDOM_FILE ������һ��Entropy Gathering Daemon���֡�
|
|
CURLOPT_ENCODING |
HTTP����ͷ��"Accept-Encoding: "��ֵ�� ��ʹ���ܹ�������Ӧ�����ݡ� ֧�ֵı�����"identity"��"deflate"��"gzip"�����Ϊ���ַ���""���ᷢ������֧�ֵı������͡� | �� cURL 7.10 �б����롣 |
CURLOPT_FTPPORT |
���ֵ����������ȡ��FTP"PORT"ָ������Ҫ��IP��ַ�� "PORT" ָ�����Զ�̷��������ӵ�����ָ����IP��ַ������ַ��������Ǵ��ı���IP��ַ����������һ������ӿ�����UNIX�£�����ֻ��һ��'-'��ʹ��Ĭ�ϵ� IP ��ַ�� | |
CURLOPT_INTERFACE |
���͵�����ӿڣ�interface����������һ���ӿ�����IP ��ַ������һ���������� | |
CURLOPT_KEYPASSWD |
ʹ�� CURLOPT_SSLKEY
�� CURLOPT_SSH_PRIVATE_KEYFILE ˽Կʱ������롣
|
�� cURL 7.16.1 ����ӡ� |
CURLOPT_KRB4LEVEL |
KRB4 (Kerberos 4) ��ȫ����������κ�ֵ������Ч��(�ӵ͵��ߵ�˳��)��"clear"��"safe"��"confidential"��"private".������ַ���������Щ����ʹ��"private"��
���ѡ������Ϊ NULL ʱ������ KRB4 ��ȫ��֤��Ŀǰ KRB4 ��ȫ��ֻ֤������ FTP ���䡣
|
|
CURLOPT_LOGIN_OPTIONS |
Can be used to set protocol specific login options, such as the
preferred authentication mechanism via "AUTH=NTLM" or "AUTH=*",
and should be used in conjunction with the
CURLOPT_USERNAME option.
|
Added in cURL 7.34.0. Available since PHP 7.0.7. |
CURLOPT_PINNEDPUBLICKEY |
Set the pinned public key. The string can be the file name of your pinned public key. The file format expected is "PEM" or "DER". The string can also be any number of base64 encoded sha256 hashes preceded by "sha256//" and separated by ";". | Added in cURL 7.39.0. Available since PHP 7.0.7. |
CURLOPT_POSTFIELDS |
ȫ������ʹ��HTTPЭ���е� "POST" ���������͡�
Ҫ�����ļ������ļ���ǰ�����@ǰ��ʹ������·����
�ļ����Ϳ����ļ������� ';type=mimetype' �ĸ�ʽָ����
������������� urlencoded ����ַ���������'para1=val1¶2=val2&...'��Ҳ����ʹ��һ�����ֶ���Ϊ��ֵ���ֶ�����Ϊֵ�����顣
���value ��һ�����飬Content-Typeͷ���ᱻ���ó�multipart/form-data��
�� PHP 5.2.0 ��ʼ��ʹ�� @ ǰ�����ļ�ʱ��value �����Ǹ����顣
�� PHP 5.5.0 ��ʼ, @ ǰ�ѱ��������ļ���ͨ�� CURLFile ���͡�
���� CURLOPT_SAFE_UPLOAD Ϊ TRUE �ɽ��� @ ǰ�����ļ��������Ӱ�ȫ�ԡ�
|
|
CURLOPT_PRIVATE |
Any data that should be associated with this cURL handle.
This data
can subsequently be retrieved with the
CURLINFO_PRIVATE option of
curl_getinfo(). cURL does nothing with this data.
When using a cURL multi handle, this private data is typically a
unique key to identify a standard cURL handle.
|
Added in cURL 7.10.3. |
CURLOPT_PROXY |
HTTP ����ͨ���� | |
CURLOPT_PROXY_SERVICE_NAME |
������֤��������ơ� | cURL 7.34.0 ����ӣ�PHP 7.0.7 ����Ч�� |
CURLOPT_PROXYUSERPWD |
һ���������ӵ������"[username]:[password]"��ʽ���ַ����� | |
CURLOPT_RANDOM_FILE |
һ������������ SSL ��������ӵ��ļ����� | |
CURLOPT_RANGE |
��"X-Y"����ʽ������X��Y���ǿ�ѡ���ȡ���ݵķ�Χ�����ֽڼơ�HTTP�����߳�Ҳ֧�ּ����������ظ����м��ö��ŷָ���"X-Y,N-M"�� | |
CURLOPT_REFERER |
��HTTP����ͷ��"Referer: "�����ݡ� | |
CURLOPT_SERVICE_NAME |
��֤��������� | cURL 7.43.0 ����ӣ��� PHP 7.0.7 ��Ч�� |
CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 |
���� 32 λ���� 16 ������ֵ������ַ���Ӧ����Զ��������Կ��public key�� �� MD5 У��ֵ���ڲ�ƥ���ʱ�� libcurl ��ܾ����ӡ� ��ѡ������� SCP �� SFTP �Ĵ��䡣 | cURL 7.17.1 ����ӡ� |
CURLOPT_SSH_PUBLIC_KEYFILE |
The file name for your public key. If not used, libcurl defaults to $HOME/.ssh/id_dsa.pub if the HOME environment variable is set, and just "id_dsa.pub" in the current directory if HOME is not set. | Added in cURL 7.16.1. |
CURLOPT_SSH_PRIVATE_KEYFILE |
The file name for your private key. If not used, libcurl defaults to
$HOME/.ssh/id_dsa if the HOME environment variable is set,
and just "id_dsa" in the current directory if HOME is not set.
If the file is password-protected, set the password with
CURLOPT_KEYPASSWD .
|
Added in cURL 7.16.1. |
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 |
��
|
|
CURLOPT_SSLKEYTYPE |
CURLOPT_SSLKEY �й涨��˽Կ�ļ������ͣ�֧�ֵ���Կ����Ϊ"PEM"(Ĭ��ֵ)��"DER"��"ENG"��
|
|
CURLOPT_UNIX_SOCKET_PATH |
ʹ�� Unix ������Ϊ���ӣ�����ָ���� string ��Ϊ·���� | cURL 7.40.0 ����ӣ� PHP 7.0.7 ����Ч�� |
CURLOPT_URL |
��Ҫ��ȡ�� URL ��ַ��Ҳ������curl_init() ��ʼ���Ự��ʱ�� | |
CURLOPT_USERAGENT |
��HTTP�����а���һ��"User-Agent: "ͷ���ַ����� | |
CURLOPT_USERNAME |
��֤��ʹ�õ��û����� | cURL 7.19.1 ����ӣ�PHP 5.5.0 ����Ч�� |
CURLOPT_USERPWD |
����һ����������Ҫ���û��������룬��ʽΪ��"[username]:[password]"�� | |
CURLOPT_XOAUTH2_BEARER |
ָ�� OAuth 2.0 access token�� | cURL 7.33.0 ����ӣ��� PHP 7.0.7 ��ӡ� |
����option
��value
Ӧ�ñ����ó����飺
ѡ�� | ��ѡvalue ֵ |
��ע |
---|---|---|
CURLOPT_CONNECT_TO |
���ӵ�ָ���������Ͷ˿ڣ��滻 URL �е������Ͷ˿ڡ�����ָ���ַ�����ʽ�����飺 HOST:PORT:CONNECT-TO-HOST:CONNECT-TO-PORT�� | cURL 7.49.0 ����ӣ� PHP 7.0.7 ����Ч�� |
CURLOPT_HTTP200ALIASES |
HTTP 200 ��Ӧ�����飬�����е���Ӧ�뱻��Ϊ����ȷ����Ӧ�����Ǵ��� | �� cURL 7.10.3 �б����롣 |
CURLOPT_HTTPHEADER |
���� HTTP ͷ�ֶε����顣��ʽ��
array('Content-type: text/plain', 'Content-length: 100')
|
|
CURLOPT_POSTQUOTE |
�� FTP ����ִ����ɺ��ڷ�������ִ�е�һ��array��ʽ�� FTP ��� | |
CURLOPT_PROXYHEADER |
����������Զ��� HTTP ͷ�� | cURL 7.37.0 ����ӣ��� PHP 7.0.7 ��ӡ� |
CURLOPT_QUOTE |
һ������ FTP ������ڷ�������ִ�е�FTP��� | |
CURLOPT_RESOLVE |
�ṩ�Զ����ַ��ָ���������Ͷ˿ڡ�
�����������˿ں� ip ��ַ���ַ�������� array �ģ�ÿ��Ԫ����ð�ŷָ�����ʽ��
array("example.com:80:127.0.0.1")
|
�� cURL 7.21.3 ����ӣ��� PHP 5.5.0 ����á� |
���� option
��value
Ӧ�ñ����ó�����Դ
������ʹ��fopen()����
ѡ�� | ��ѡ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����Դ������ڶ�����Ԥ��Ҫ���ص����ֽڣ�bytes��������������Ŀǰ���ص��ֽ��������ĸ���Ԥ�ƴ��������ϴ��ֽ������������Ŀǰ�ϴ����ֽ�����
���ط���ֵ���жϴ��䡣
���佫���� |
CURLOPT_READFUNCTION |
�ص����������ú���Ӧ����������������һ���� cURL resource���ڶ�����ͨ��ѡ��
CURLOPT_INFILE ���� cURL �� stream resource�������������������Զ�ȡ�����ݵ���������
���������뷵��һ���ַ���������С�ڻ�������������������������������һ��Ӵ���� stream
resource ��ȡ�����ؿ��ַ�����Ϊ EOF���ļ������� �źš�
|
CURLOPT_WRITEFUNCTION |
�ص����������ú���Ӧ����������������һ���� cURL resource���ڶ�����Ҫд��������ַ������� �ݱ����ں����б����档 ��������ȷ����д�����ݵ��ֽ�����������ᱻһ���������� �ϡ� |
����ֵ��
Option | ���� value Ϊ |
---|---|
CURLOPT_SHARE |
curl_share_init() ���صĽ���� ʹ cURL ���Դ�������������ݡ� |
�ɹ�ʱ���� TRUE
�� ������ʧ��ʱ���� FALSE
��
�汾 | ˵�� |
---|---|
7.0.7 |
���� CURL_HTTP_VERSION_2 �� CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE ��
CURL_HTTP_VERSION_2TLS �� CURL_REDIR_POST_301 ��
CURL_REDIR_POST_302 �� CURL_REDIR_POST_303 ��
CURL_REDIR_POST_ALL �� CURL_VERSION_KERBEROS5 ��
CURL_VERSION_PSL �� CURL_VERSION_UNIX_SOCKETS ��
CURLAUTH_NEGOTIATE �� CURLAUTH_NTLM_WB ��
CURLFTP_CREATE_DIR �� CURLFTP_CREATE_DIR_NONE ��
CURLFTP_CREATE_DIR_RETRY �� CURLHEADER_SEPARATE ��
CURLHEADER_UNIFIED �� CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE ��
CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE �� CURLMOPT_MAX_HOST_CONNECTIONS ��
CURLMOPT_MAX_PIPELINE_LENGTH �� CURLMOPT_MAX_TOTAL_CONNECTIONS ��
CURLOPT_CONNECT_TO �� CURLOPT_DEFAULT_PROTOCOL ��
CURLOPT_DNS_INTERFACE �� CURLOPT_DNS_LOCAL_IP4 ��
CURLOPT_DNS_LOCAL_IP6 �� CURLOPT_EXPECT_100_TIMEOUT_MS ��
CURLOPT_HEADEROPT �� CURLOPT_LOGIN_OPTIONS ��
CURLOPT_PATH_AS_IS �� CURLOPT_PINNEDPUBLICKEY ��
CURLOPT_PIPEWAIT �� CURLOPT_PROXY_SERVICE_NAME ��
CURLOPT_PROXYHEADER �� CURLOPT_SASL_IR ��
CURLOPT_SERVICE_NAME �� CURLOPT_SSL_ENABLE_ALPN ��
CURLOPT_SSL_ENABLE_NPN �� CURLOPT_SSL_FALSESTART ��
CURLOPT_SSL_VERIFYSTATUS �� CURLOPT_STREAM_WEIGHT ��
CURLOPT_TCP_FASTOPEN �� CURLOPT_TFTP_NO_OPTIONS ��
CURLOPT_UNIX_SOCKET_PATH �� CURLOPT_XOAUTH2_BEARER ��
CURLPROTO_SMB �� CURLPROTO_SMBS ��
CURLPROXY_HTTP_1_0 �� CURLSSH_AUTH_AGENT ��
CURLSSLOPT_NO_REVOKE ��
|
7.0.0 |
���� CURLOPT_SAFE_UPLOAD ��ѡ���ѱ�ɾ���ˡ�
���е� curl �ļ����ϴ�������ʹ�� CURLFile��
|
5.6.0 |
Ĭ�� CURLOPT_SAFE_UPLOAD Ϊ TRUE ��
|
5.6.0 |
�Ƴ� CURLOPT_CLOSEPOLICY ����ص�ֵ��
|
5.5.0 |
��� cURL ��Դ��Ϊ CURLOPT_PROGRESSFUNCTION �ص������ĵ�һ��������
|
5.5.0 |
���� CURLOPT_SHARE ��
|
5.3.0 |
���� CURLOPT_PROGRESSFUNCTION ��
|
5.2.10 |
���� CURLOPT_PROTOCOLS , and
CURLOPT_REDIR_PROTOCOLS .
|
5.2.4 |
������ CURLOPT_PRIVATE ��
|
5.1.0 |
���� CURLOPT_AUTOREFERER ,
CURLOPT_BINARYTRANSFER ,
CURLOPT_FTPSSLAUTH ,
CURLOPT_PROXYAUTH , and
CURLOPT_TIMECONDITION .
|
5.0.0 |
���� CURLOPT_FTP_USE_EPRT ,
CURLOPT_NOSIGNAL ,
CURLOPT_UNRESTRICTED_AUTH ,
CURLOPT_BUFFERSIZE ,
CURLOPT_HTTPAUTH ,
CURLOPT_PROXYPORT ,
CURLOPT_PROXYTYPE ,
CURLOPT_SSLCERTTYPE , and
CURLOPT_HTTP200ALIASES .
|
Example #1 ��ʼ��һ���µ�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);
?>
Example #2 �ϴ��ļ� (PHP 5.5.0 ����)
<?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_SAFE_UPLOAD, false); // PHP 5.6.0 ����뿪��
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 ) )
Note:
����һ�����鵽
CURLOPT_POSTFIELDS
��cURL������ݱ���� multipart/form-data����Ȼ����һ��URL-encoded�ַ���ʱ�����ݻᱻ����� application/x-www-form-urlencoded��