English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
(PHP 4 >= 4.0.2, PHP 5)
curl_setopt — Définir une option de transfert CURL.
bool curl_setopt (resource $ch, int $option, mixed $value)
Définir une option pour le gestionnaire de session CURL donné.
ch
Le gestionnaire CURL retourné par curl_init().
option
Les options CURLOPT_XXX à configurer.
value
Définir la valeur sur l'option option.
Pour les paramètres optionnels des options suivantes, la valeur doit être définie comme une valeur de type booléen :
Option | OptionalvalueValue | Remarque |
---|---|---|
CURLOPT_AUTOREFERER | Lorsque selonLocation:Lorsqu'il y a un redirection, le header est automatiquement configuré avecReferer:Informations. | |
CURLOPT_BINARYTRANSFER | Lorsqu'il est activéCURLOPT_RETURNTRANSFERLorsqu'il est activé, il retourne la sortie brute (Raw). | |
CURLOPT_COOKIESESSION | Lorsqu'elle est activée, curl transmetra uniquement un cookie de session, ignorera les autres cookies. Par défaut, CURL retournera tous les cookies au serveur. Le cookie de session est un cookie utilisé pour déterminer si le cookie de session du serveur est valide. | |
CURLOPT_CRLF | Lorsqu'elle est activée, le saut de ligne Unix est converti en retour chariot saut de ligne. | |
CURLOPT_DNS_USE_GLOBAL_CACHE | Lorsqu'elle est activée, une cache DNS globale est activée, cette option est sécurisée pour le thread, et activée par défaut. | |
CURLOPT_FAILONERROR | Afficher le code d'état HTTP, le comportement par défaut est d'ignorer le numéro inférieur ou égal à400 des informations HTTP. | |
CURLOPT_FILETIME | Lorsqu'elle est activée, elle tentera de modifier les informations du document distant. Les informations de résultat seront transmises par la fonctionCURLINFO_FILETIMEOption retour. curl_getinfo(). | |
CURLOPT_FOLLOWLOCATION | Lorsqu'elle est activée, elle affichera les informations retournées par le serveur serveur"Location: "Retourner recursivement dans l'entête au serveur, utiliserCURLOPT_MAXREDIRSIl est possible de limiter le nombre de retours récursifs. | |
CURLOPT_FORBID_REUSE | Forcer à couper le lien après l'interaction terminée, ne pas réutiliser. | |
CURLOPT_FRESH_CONNECT | Forcer à obtenir une nouvelle connexion pour remplacer la connexion en cache. | |
CURLOPT_FTP_USE_EPRT | Lorsqu'elle est activée, l'utilisation de la commande EPRT (ou LPRT) est recommandée lors du téléchargement FTP. Réglé surFALSELorsqu'elle est désactivée, EPRT et LPRT sont utilisés au lieu de PORT. uniquement. | |
CURLOPT_FTP_USE_EPSV | Lorsque l'option est activée, avant de répondre au mode PASV pendant le transfert FTP, il essaie d'abord la commande EPSV. Réglé surFALSEDésactiver la commande EPSV. | |
CURLOPT_FTPAPPEND | Lorsqu'il est activé, il ajoutera à la fin du fichier au lieu de le remplacer. | |
CURLOPT_FTPASCII | CURLOPT_TRANSFERTEXTest un alias. | |
CURLOPT_FTPLISTONLY | Lorsqu'il est activé, il ne listera que les noms des répertoires FTP. | |
CURLOPT_HEADER | Lorsqu'il est activé, il sortira les informations des en-têtes comme un flux de données. | |
CURLINFO_HEADER_OUT | Lorsqu'il est activé, il suivra la chaîne de requête du gestionnaire. | De PHP 5.1.3 Temps d'attente pour essayer de se connecter, en millisecondes. Si réglé à 0, attendre indéfiniment.CURLINFO_Le préfixe est intentionnel. |
CURLOPT_HTTPGET | Lorsqu'il est activé, il définira le méthode HTTP sur GET, car GET est par défaut, donc il ne sera utilisé que lorsque cela est modifié. | |
CURLOPT_HTTPPROXYTUNNEL | Lorsqu'il est activé, il transmettra via le proxy HTTP. | |
CURLOPT_MUTE | Lorsqu'il est activé, il restaurera tous les paramètres modifiés dans les fonctions CURL aux valeurs par défaut. | |
CURLOPT_NETRC | Après avoir établi la connexion, accédez à ~/Pour obtenir les informations de nom d'utilisateur et de mot de passe à partir du fichier .netrc et se connecter au site distant. | |
CURLOPT_NOBODY | Lorsqu'il est activé, il n'outputtra pas la partie BODY de l'HTML. | |
CURLOPT_NOPROGRESS | Lorsqu'il est activé, il ferme la barre de progression du transfert curl, cette option est activée par défaut. Note: PHP configure automatiquement cette option àTRUE, cette option ne devrait être modifiée que dans le but du débogage. | |
CURLOPT_NOSIGNAL | Lorsqu'il est activé, il ignore tous les signaux passés à php par curl. Dans le transfert multi-threadé SAPI, cette option est activée par défaut. | CURL 7.10est ajouté. |
CURLOPT_POST | Lorsqu'il est activé, il enverra une requête POST standard, du type :application/x-www-form-urlencoded, comme lors d'une soumission de formulaire. | |
CURLOPT_PUT | Lorsqu'il est activé, cela permet à HTTP d'envoyer des fichiers, il doit être configuré en même tempsCURLOPT_INFILEet)。. | |
CURLOPT_RETURNTRANSFER | Retourne les informations obtenues par curl_exec() sous forme de flux de fichier, plutôt que de les afficher directement. | |
CURLOPT_SSL_VERIFYPEER | Désactiver après cela, CURL arrêtera la vérification à partir du serveur. UtiliserCURLOPT_CAINFOOption de configuration de l'utilisation du certificatCURLOPT_CAPATHOption de configuration du répertoire de certificat SiCURLOPT_SSL_VERIFYPEER(par défaut)2) sera activé,CURLOPT_SSL_VERIFYHOSTDoit être réglé surTRUESinon, il est réglé surFALSE. | Depuis CURL 7.10Par défaut à partir deTRUE. À partir de CURL 7.10Commencer l'installation par défaut du bind. |
CURLOPT_TRANSFERTEXT | Activer le mode ASCII pour le transfert FTP. Pour LDAP, il recherche des informations en texte brut plutôt qu'en HTML. Sur les systèmes Windows, le système ne mettra pasSTDOUT设置成binary模式。 | |
CURLOPT_UNRESTRICTED_AUTH | Mettre en mode binaire.CURLOPT_FOLLOWLOCATIONEn utilisant | |
Ajoute en continu des informations d'identification utilisateur et de mot de passe dans plusieurs emplacements de l'en-tête généré, même si le domaine a changé. | CURLOPT_UPLOAD | |
Permet le téléversement de fichiers après activation. | CURLOPT_VERBOSESTDERRActivera le rapport de toutes les informations, stockées dansCURLOPT_STDERROu spécifié |
en.
Option | OptionalvalueValue | Remarque |
---|---|---|
CURLOPT_BUFFERSIZE | Pour les options suivantes, la valeur de value doit être définie sur un entier de type integer : | Dans CURL 7.10est ajouté. |
CURLOPT_CLOSEPOLICY | Dans chaque lot de données récupéré, la taille lue dans le cache, mais cette valeur n'est pas garantie d'être remplie à chaque fois. | |
Ce n'est pas CURLCLOSEPOLICY_LEAST_RECENTLY_USED ni CURLCLOSEPOLICY_OLDEST, il existe également d'autres CURLCLOSEPOLICY, mais CURL ne les prend pas en charge temporairement. | CURLOPT_CONNECTTIMEOUT | |
Temps d'attente avant de commencer la connexion, si réglé à 0, attendre indéfiniment. | CURLOPT_CONNECTTIMEOUT_MS | Dans CURL 7.16.2était ajouté. 5.2.3Temps d'attente pour essayer de se connecter, en millisecondes. Si réglé à 0, attendre indéfiniment. |
Disponible à partir de maintenant. | CURLOPT_DNS_CACHE_TIMEOUT12Réglage du temps de conservation des informations DNS en mémoire, la valeur par défaut est | |
CURLOPT_FTPSSLAUTH | 0 secondes.Méthode de validation FTP : CURLFTPAUTH_SSL(Essayez d'abord SSL), CURLFTPAUTH_TLS(Essayez d'abord TLS) ou CURLFTPAUTH_DEFAULT | Dans CURL 7.12.2est ajouté. |
(Laisser CURL décider automatiquement). | CURLOPT_HTTP_VERSION CURL_HTTP_VERSION_NONE.0) ou1(Valeur par défaut, laissez CURL décider de la version à utiliser), _/1_0.0) ou1CURL_HTTP_VERSION_1 _/1.1(Utiliser强制HTTP | |
)。 | CURLOPT_INFILESIZE | |
Lorsque la vitesse de transfert est inférieure à | Définir la taille maximale du fichier téléversé en unité de byte.Lorsque la vitesse de transfert est inférieure àCURLOPT_LOW_SPEED_LIMIT/bytessec),PHP utilisepour décider s'il faut annuler le transfert en raison de la lenteur excessive. | |
sec),PHP utilise | Définir la taille maximale du fichier téléversé en unité de byte.Lorsque la vitesse de transfert est inférieure àCURLOPT_LOW_SPEED_LIMIT/bytessec),PHP utilisepour décider s'il faut annuler le transfert en raison de la lenteur excessive. | |
CURLOPT_MAXCONNECTS | Nombre maximum de connexions autorisées, au-delà de cela, il est déterminé parCURLOPT_CLOSEPOLICYDétermine les connexions qui doivent être arrêtées. | |
CURLOPT_MAXREDIRS | Spécifie le nombre maximum de redirections HTTP, cette option est liée àCURLOPT_FOLLOWLOCATIONutilisés ensemble. | |
CURLOPT_PORT | Utilisé pour spécifier le port de connexion. (Optionnel) | |
CURLOPT_PROTOCOLS | CURLPROTO_*des valeurs de bits. Si activé, la valeur de bit limitera les protocoles utilisables par libcurl pendant le transfert. Cela vous permettra de prendre en charge de nombreux protocoles lors de la compilation de libcurl, mais limitera à un sous-ensemble des protocoles autorisés. Par défaut, libcurl utilisera tous les protocoles qu'il prend en charge. VoirCURLOPT_REDIR_PROTOCOLS. Les options de protocole disponibles sont : 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 | Dans CURL 7.19.4est ajouté. |
CURLOPT_PROTOCOLS | CURLPROTO_*des valeurs de bits. Si activé, la valeur de bit limitera les protocoles utilisables par libcurl pendant le transfert. Cela vous permettra de prendre en charge de nombreux protocoles lors de la compilation de libcurl, mais limitera à un sous-ensemble des protocoles autorisés. Par défaut, libcurl utilisera tous les protocoles qu'il prend en charge. VoirCURLOPT_REDIR_PROTOCOLS. Les options de protocole disponibles sont : 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 | Dans CURL 7.19.4est ajouté. |
CURLOPT_PROXYAUTH | le mode de validation des connexions proxy HTTP. Il est utilisé dansCURLOPT_HTTPAUTHdes drapeaux de bits pour configurer les options correspondantes. Pour l'authentification proxy, il n'y a queCURLAUTH_BASICetCURLAUTH_NTLMactuellement pris en charge. | Dans CURL 7.10.7est ajouté. |
CURLOPT_PROXYPORT | le port du serveur proxy. Le port peut également être configuré dansCURLOPT_PROXYdans lequel il est configuré. | |
CURLOPT_PROXYTYPE | n'est pasCURLPROXY_HTTP (valeur par défaut) estCURLPROXY_SOCKS5. | Dans CURL 7.10est ajouté. |
CURLOPT_REDIR_PROTOCOLS | CURLPROTO_*des valeurs de bits. Si activé, la valeur de bit restreindra les threads de transfert àCURLOPT_FOLLOWLOCATIONLes protocoles utilisables lors de l'activation d'un suivi de redirection. Cela vous permettra de limiter les sous-ensembles de protocoles autorisés lors de la redirection. Par défaut, libcurl autorisera tous les protocoles sauf FILE et SCP. Cela et7.19.4Les versions prépubliées suivent sans condition tous les protocoles pris en charge, avec quelques différences. Pour les constantes de protocole, veuillez vous référer àCURLOPT_PROTOCOLS. | Dans CURL 7.19.4est ajouté. |
CURLOPT_RESUME_FROM | transmet une quantité d'octets décalée (utilisé pour la reprise de téléchargement). | |
CURLOPT_SSL_VERIFYHOST | 1 vérifie si le certificat SSL du serveur contient un nom commun (common name).2 vérifie si le nom commun existe et s'il correspond au nom d'hôte fourni. Note de traduction : Le nom commun (Common Name) est généralement le domaine (domain) ou le sous-domaine (sub domain) pour lequel vous allez demander un certificat SSL. | |
CURLOPT_SSLVERSION | la version SSL utilisée (2 ou 3) par défaut, PHP détecte cette valeur par lui-même, bien que dans certains cas, il soit nécessaire de la configurer manuellement. | |
CURLOPT_TIMECONDITION | si elle estCURLOPT_TIMEVALUEelle a été modifiée après une certaine date spécifiée, alors utilisezCURL_TIMECOND_IFMODSINCEpage de retour, si elle n'a pas été modifiée et queCURLOPT_HEADERsi elle est à true, alors elle renvoie une"304 Not Modified"de l'en-tête CURLOPT_HEADERsi false, utiliseCURL_TIMECOND_IFUNMODSINCEla valeur par défaut estCURL_TIMECOND_IFUNMODSINCE. | |
CURLOPT_TIMEOUT | définit le nombre maximal de secondes que CURL peut exécuter. | |
CURLOPT_TIMEOUT_MS | définit le nombre maximal de millisecondes que CURL peut exécuter. | Dans CURL 7.16.2était ajouté. 5.2.3peut être utilisé depuis |
CURLOPT_TIMEVALUE | définitCURLOPT_TIMECONDITIONl'horodatage utilisé, par défaut, il utiliseCURL_TIMECOND_IFMODSINCE. |
Pour les options suivantes, la valeur de value doit être définie comme une chaîne de caractères :
Option | OptionalvalueValue | Remarque |
---|---|---|
CURLOPT_CAINFO | un répertoire contenant1un ou plusieurs fichiers utilisés pour valider le serveur. Ce paramètre n'a de sens que siCURLOPT_SSL_VERIFYPEER. | |
CURLOPT_CAPATH | un répertoire contenant plusieurs certificats CA. Cette option n'a de sens qu'avecCURLOPT_SSL_VERIFYPEERutilisés ensemble. | |
CURLOPT_COOKIE | définir dans l'en-tête HTTP"Cookie: "du contenu. Plusieurs cookies sont séparés par des points-virgules, suivi d'un espace (par exemple, "fruit=apple; colour=red)"). | |
CURLOPT_COOKIEFILE | Le nom du fichier contenant les données de cookie, le format du fichier de cookie peut être le format Netscape ou simplement des informations d'en-tête HTTP stockées dans un fichier. | |
CURLOPT_COOKIEJAR | le fichier dans lequel les informations de cookie sont sauvegardées après la fin de la connexion. | |
CURLOPT_CUSTOMREQUEST | remplacer par une information de demande personnalisée"GET"ou"HEAD"pour exécuter"DELETE" ou d'autres demandes HTTP plus discrètes. Les valeurs valides sont"GET","POST","CONNECT"etc. Cela signifie qu'il ne faut pas saisir l'intégralité de la demande HTTP ici. Par exemple, saisir"GET" /index.html HTTP/1.0\r\n\r\n"est incorrect. Note: Ne pas utiliser avant de déterminer que le serveur prend en charge cette méthode de demande personnalisée. | |
CURLOPT_EGDSOCKET | similaireCURLOPT_RANDOM_FILEà l'exception d'un socket de démon de collecte d'entropie. | |
CURLOPT_ENCODING | dans l'en-tête HTTP"Accept"-Encoding: "la valeur. Les codages pris en charge sont"identity",,et"deflate""gzip". Si la chaîne est une chaîne vide"" | Dans CURL 7.10est ajouté. |
,Les en-têtes de requête enverront tous les types de codage pris en charge. | CURLOPT_FTPPORT-'pour utiliser l'adresse IP par défaut. Cette valeur sera utilisée pour obtenir l'adresse IP nécessaire pour l'instruction "POST" FTP. L'instruction "POST" informe le serveur distant de se connecter à l'adresse IP spécifiée. Cette chaîne peut être une adresse IP texte, un nom d'hôte, un nom d'interface réseau (sous UNIX) ou simplement un' | |
CURLOPT_INTERFACE | Le nom de l'interface réseau de transmission, qui peut être un nom d'interface, une adresse IP ou un nom d'hôte. | |
CURLOPT_KRB4LEVEL | KRB4 (Kerberos 4) Niveau de sécurité. Toute valeur suivante est valide (par ordre croissant) :"clear"、"safe"、"confidential"、"private".. Si la chaîne ne correspond à aucune de celles-ci, elle utilisera"private". Cette option est définie surNULLLorsque KRB sera désactivé4 L'authentification sécurisée. Actuellement KRB4 L'authentification sécurisée ne peut être utilisée que pour le transfert FTP. | |
CURLOPT_POSTFIELDS | Tous les données seront envoyées en utilisant l'opération "POST" du protocole HTTP. Pour envoyer un fichier, ajoutez@préfixé et en utilisant un chemin complet. Ce paramètre peut être similaire à une chaîne après urlencoded'para1=val1¶2=val2&...'ou utiliser un tableau avec le nom du champ comme clé et les données du champ comme valeur. SivalueC'est un tableau,Content-TypeL'entête sera configuré enmultipart/form-data. | |
CURLOPT_PROXY | Un canal HTTP proxy. | |
CURLOPT_PROXYUSERPWD | Un nom utilisé pour se connecter à un proxy."[username]:[password]"d'une chaîne de caractères au format. | |
CURLOPT_RANDOM_FILE | Un nom de fichier utilisé pour générer un grain de numération aléatoire SSL. | |
CURLOPT_RANGE | par"X-Y"dans le format, où X et Y sont des options facultatives pour obtenir la gamme de données, en octets. Les threads de transmission HTTP supportent également plusieurs éléments répétés, séparés par des virgules, comme"X-Y,N-M". | |
CURLOPT_REFERER | Dans l'entête de la requête HTTP"Referer: "du contenu. | |
CURLOPT_SSL_CIPHER_LIST | Une liste d'algorithmes de chiffrement SSL. Par exempleRC4-SHAetTLSv1Toutes les listes de chiffrement sont disponibles. | |
CURLOPT_SSLCERT | Un nom de fichier contenant un certificat PEM. | |
CURLOPT_SSLCERTPASSWD | 使用CURLOPT_SSLCERTUtiliser | |
CURLOPT_SSLCERTTYPE | CURLOPT_SSLCERT"PEM" Le mot de passe nécessaire pour le certificat. "DER"et"ENG". | Dans CURL 7.9.3est ajouté. |
Le type de certificat. Les formats pris en charge sont | par défaut),CURLOPT_SSLKEYCURLOPT_SSLENGINE | |
La variable de moteur de chiffrement du clé privé SSL spécifié dans | CURLOPT_SSLENGINE_DEFAULT | |
CURLOPT_SSLKEY | Variable utilisée pour les opérations de chiffrement asymétrique. | |
Le nom de fichier contenant le clé privé SSL. | CURLOPT_SSLKEYPASSWDCURLOPT_SSLKEYLe mot de passe du clé privé SSL spécifié dans Note: Comme cette option contient des informations sensibles de mot de passe, assurez-vous que ce script PHP est sécurisé. | |
CURLOPT_SSLKEYTYPE | CURLOPT_SSLKEYLe type de chiffrement du clé privé spécifié dans"PEM"(valeur par défaut),"DER"et"ENG". | |
CURLOPT_URL | L'adresse de l'URL à obtenir, peut également être définie dans la fonction curl_init(). | |
CURLOPT_USERAGENT | Inclure dans la requête HTTP une"User-Agent: "La chaîne de caractères de l'en-tête. | |
CURLOPT_USERPWD | Transmettre un nom d'utilisateur et un mot de passe nécessaires pour la connexion, format :"[username]:[password]". |
Pour les paramètres optionnels ci-dessous, la valeur doit être définie sur un tableau :
Option | OptionalvalueValue | Remarque |
---|---|---|
CURLOPT_HTTP200ALIASES | 200 code d'état d'array, les codes de réponse dans l'array sont considérés comme des réponses correctes, sinon ils sont considérés comme des erreurs. | Dans CURL 7.10.3est ajouté. |
CURLOPT_HTTPHEADER | Un tableau utilisé pour définir les champs d'en-tête HTTP. Utilisez le tableau suivant pour le paramétrage : array('Content-type: text/plain', 'Content-length: 100') | |
CURLOPT_POSTQUOTE | Un ensemble de commandes FTP exécutées sur le serveur après l'exécution de la requête FTP. | |
CURLOPT_QUOTE | Un ensemble de commandes FTP exécutées sur le serveur avant la requête FTP. |
Pour les paramètres optionnels ci-dessous, la valeur doit être définie sur une ressource de flux (par exemple, utiliser fopen()):
Option | OptionalvalueValue |
---|---|
CURLOPT_FILE | Définir l'emplacement du fichier de sortie, la valeur est un type de ressource, par défautSTDOUT (Navigateur). |
CURLOPT_INFILE | L'adresse de fichier à lire lors de l'envoi de fichiers, la valeur est un type de ressource. |
CURLOPT_STDERR | Définir une adresse de sortie d'erreur, la valeur est un type de ressource, remplaçant le défaut par défautSTDERR. |
CURLOPT_WRITEHEADER | Set the file address for writing the header part, the value is a resource type. |
For the optional parameters of the following options, the value should be set to a callback function name:
Option | OptionalvalueValue |
---|---|
CURLOPT_HEADERFUNCTION | Set a callback function that has two parameters, the first is the CURL resource handle, and the second is the output header data. The output of the header data must depend on this function, and return the size of the data written. |
CURLOPT_PASSWDFUNCTION | Set a callback function with three parameters, the first is the CURL resource handle, the second is a password prompt, and the third parameter is the maximum allowed length of the password. Return the value of the password. |
CURLOPT_PROGRESSFUNCTION | Set a callback function with three parameters, the first is the CURL resource handle, the second is a file descriptor resource, and the third is the length. Return the data containing. |
CURLOPT_READFUNCTION | Callback function name. This function should accept three parameters. The first is the CURL resource; the second is the data passed through the option CURLOPT_INFILE The stream resource passed to CURL; the third parameter is the maximum number of data that can be read. Back The callback function must return a string, the length of which is less than or equal to the amount of data requested (the third parameter). Generally from the input stream Resource read. Return an empty string as EOF(End of file) signal. |
CURLOPT_WRITEFUNCTION | Callback function name. This function should accept two parameters. The first is the CURL resource; the second is the string of data to be written. The number The data must be saved in the function. The function must return the exact number of bytes to be written, otherwise the transfer will be interrupted by an error Break. |
Returns TRUE when successful, or FALSE when failed.
Version | Description |
---|---|
5.2.10 | Introduction CURLOPT_PROTOCOLS , andCURLOPT_REDIR_PROTOCOLS . |
5.1.0 | Introduction CURLOPT_AUTOREFERER ,CURLOPT_BINARYTRANSFER ,CURLOPT_FTPSSLAUTH ,CURLOPT_PROXYAUTH , andCURLOPT_TIMECONDITION . |
5.0.0 | Introduction CURLOPT_FTP_USE_EPRT ,CURLOPT_NOSIGNAL ,CURLOPT_UNRESTRICTED_AUTH ,CURLOPT_BUFFERSIZE ,CURLOPT_HTTPAUTH ,CURLOPT_PROXYPORT ,CURLOPT_PROXYTYPE ,CURLOPT_SSLCERTTYPE , andCURLOPT_HTTP200ALIASES . |
初始化一个新的CURL会话并获取一个网页
<?php // 创建一个新CURL资源 $ch = curl_init(); // 设置URL和相应的选项 curl_setopt($ch, CURLOPT_URL, "http://fr.oldtoolbag.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,CURL会把数据编码成 multipart/form-data,而然传递一个URL-encoded字符串时,数据会被编码成 application/x-www-form-urlencoded。