(PHP 4 >= 4.0.2, PHP 5)
curl_setopt – Legen Sie eine cURL-Transportoption fest.
bool curl_setopt ( Ressource $ch , int $option , gemischter $value )
Legt eine Option für das angegebene cURL-Sitzungshandle fest.
ch
Das von curl_init() zurückgegebene cURL-Handle.
Option
CURLOPT_XXX-Optionen müssen festgelegt werden.
Wert
Der Wert, der für die Option festgelegt wird.
Für die optionalen Parameter der folgenden Optionen sollte value auf einen Wert vom Typ „Bool“ gesetzt werden:
Optionen | Optionaler Wert | Bemerkung |
---|---|---|
CURLOPT_AUTOREFERER | Bei der Weiterleitung basierend auf Standort: werden die Referrer: -Informationen im Header automatisch festgelegt. | |
CURLOPT_BINARYTRANSFER | Gibt eine Rohausgabe zurück, wenn CURLOPT_RETURNTRANSFER aktiviert ist. | |
CURLOPT_COOKIESESSION | Wenn diese Option aktiviert ist, übergibt Curl nur ein Sitzungscookie und ignoriert andere Cookies. Standardmäßig gibt Curl alle Cookies an den Server zurück. Sitzungscookies beziehen sich auf Cookies, die verwendet werden, um festzustellen, ob die serverseitige Sitzung gültig ist. | |
CURLOPT_CRLF | Wenn diese Option aktiviert ist, werden Unix-Zeilenumbrüche in Wagenrückläufe und Zeilenvorschübe konvertiert. | |
CURLOPT_DNS_USE_GLOBAL_CACHE | Wenn diese Option aktiviert ist, ist ein globaler DNS-Cache aktiviert. Dieser ist threadsicher und standardmäßig aktiviert. | |
CURLOPT_FAILONERROR | Zeigt den HTTP-Statuscode an. Das Standardverhalten besteht darin, HTTP-Nachrichten mit Nummern kleiner oder gleich 400 zu ignorieren. | |
CURLOPT_FILETIME | Wenn diese Option aktiviert ist, wird versucht, Informationen im Remote-Dokument zu ändern. Die Ergebnisinformationen werden über die Option CURLINFO_FILETIME der Funktion curl_getinfo() zurückgegeben. curl_getinfo(). | |
CURLOPT_FOLLOWLOCATION | Wenn diese Option aktiviert ist, wird der vom Server zurückgegebene „Standort:“ in den Header eingefügt und rekursiv an den Server zurückgegeben. Verwenden Sie CURLOPT_MAXREDIRS, um die Anzahl der rekursiven Rückgaben zu begrenzen. | |
CURLOPT_FORBID_REUSE | Die Verbindung wird nach Abschluss der Interaktion zwangsweise getrennt und kann nicht wiederverwendet werden. | |
CURLOPT_FRESH_CONNECT | Erzwingt den Aufbau einer neuen Verbindung und ersetzt die Verbindung im Cache. | |
CURLOPT_FTP_USE_EPRT | Wenn diese Option aktiviert ist, verwenden Sie beim FTP-Download den Befehl EPRT (oder LPRT). Bei Festlegung auf FALSE werden EPRT und LPRT deaktiviert. Verwenden Sie nur den PORT-Befehl. | |
CURLOPT_FTP_USE_EPSV | Wenn diese Option aktiviert ist, werden zunächst EPSV-Befehle versucht, bevor bei FTP-Übertragungen in den PASV-Modus zurückgekehrt wird. Deaktiviert den EPSV-Befehl, wenn er auf FALSE gesetzt ist. | |
CURLOPT_FTPAPPEND | Wenn diese Option aktiviert ist, schreibt „Anhängen“ in die Datei, anstatt sie zu überschreiben. | |
CURLOPT_FTPASCII | Alias für CURLOPT_TRANSFERTEXT . | |
CURLOPT_FTPLISTONLY | Wenn diese Option aktiviert ist, werden nur die Namen der FTP-Verzeichnisse aufgelistet. | |
CURLOPT_HEADER | Wenn diese Option aktiviert ist, werden die Header-Dateiinformationen als Datenstrom ausgegeben. | |
CURLINFO_HEADER_OUT | Anforderungszeichenfolge zum Verfolgen von Handles, wenn aktiviert. | Verfügbar ab PHP 5.1.3. Das Präfix CURLINFO_ ist beabsichtigt. |
CURLOPT_HTTPGET | Wenn diese Option aktiviert ist, wird die HTTP-Methode auf GET gesetzt. Da GET die Standardeinstellung ist, wird sie nur verwendet, wenn sie geändert wird. | |
CURLOPT_HTTPPROXYTUNNEL | Bei Aktivierung erfolgt die Übertragung über einen HTTP-Proxy. | |
CURLOPT_MUTE | Wenn diese Option aktiviert ist, werden alle geänderten Parameter in der cURL-Funktion auf ihre Standardwerte zurückgesetzt. | |
CURLOPT_NETRC | Nachdem die Verbindung hergestellt wurde, greifen Sie auf die Datei ~/.netrc zu, um den Benutzernamen und das Kennwort für die Verbindung mit der Remote-Site abzurufen. | |
CURLOPT_NOBODY | Wenn diese Option aktiviert ist, wird der BODY-Teil des HTML-Codes nicht ausgegeben. | |
CURLOPT_NOPROGRESS | Deaktivieren Sie den Fortschrittsbalken der Curl-Übertragung, wenn dieser aktiviert ist. Die Standardeinstellung dieses Elements ist aktiviert.
| |
CURLOPT_NOSIGNAL | Wenn diese Option aktiviert ist, werden alle von Curl an PHP übergebenen Signale ignoriert. Dieses Element ist während der SAPI-Multithread-Übertragung standardmäßig aktiviert. | Hinzugefügt in cURL 7.10. |
CURLOPT_POST | Wenn diese Option aktiviert ist, wird eine reguläre POST-Anfrage vom Typ application/x-www-form-urlencoded gesendet, genau wie bei der Formularübermittlung. | |
CURLOPT_PUT | Wenn diese Option aktiviert ist, damit HTTP Dateien senden kann, müssen sowohl CURLOPT_INFILE als auch CURLOPT_INFILESIZE festgelegt sein. | |
CURLOPT_RETURNTRANSFER | Geben Sie die von curl_exec() erhaltenen Informationen in Form eines Dateistreams zurück, anstatt sie direkt auszugeben. | |
CURLOPT_SSL_VERIFYPEER | Wenn diese Option deaktiviert ist, beendet cURL die Validierung vom Server. Legen Sie das Zertifikat mit der Option CURLOPT_CAPATH fest. Wenn CURLOPT_SSL_VERIFYPEER (Standard 2) aktiviert ist, muss CURLOPT_SSL_VERIFYHOST auf TRUE gesetzt werden , andernfalls auf FALSE . | Der Standardwert ist TRUE seit cURL 7.10. Ab cURL 7.10 ist die Bundle-Installation standardmäßig vorgesehen. |
CURLOPT_TRANSFERTEXT | Wenn diese Option aktiviert ist, wird der ASCII-Modus für FTP-Übertragungen verwendet. Bei LDAP werden reine Textinformationen anstelle von HTML abgerufen. Auf Windows-Systemen setzt das System STDOUT nicht auf den Binärmodus. | |
CURLOPT_UNRESTRICTED_AUTH | Hängen Sie Benutzernamen- und Passwortinformationen kontinuierlich an mehrere Stellen im mit CURLOPT_FOLLOWLOCATION generierten Header an, auch wenn sich der Domänenname geändert hat. | |
CURLOPT_UPLOAD | Datei-Uploads zulassen, wenn aktiviert. | |
CURLOPT_VERBOSE | Wenn diese Option aktiviert ist, werden alle Informationen gemeldet und in STDERR oder dem angegebenen CURLOPT_STDERR gespeichert. |
Für die optionalen Parameter der folgenden Optionen sollte value auf einen Wert vom Typ Integer gesetzt werden:
Optionen | Optionaler Wert | Bemerkung |
---|---|---|
CURLOPT_BUFFERSIZE | Die Größe des Caches wird jedes Mal in die erhaltenen Daten eingelesen, es gibt jedoch keine Garantie dafür, dass dieser Wert jedes Mal gefüllt wird. | Hinzugefügt in cURL 7.10. |
CURLOPT_CLOSEPOLICY | Entweder CURLCLOSEPOLICY_LEAST_RECENTLY_USED oder CURLCLOSEPOLICY_OLDEST, es gibt drei weitere CURLCLOSEPOLICYs, aber cURL unterstützt sie noch nicht. | |
CURLOPT_CONNECTTIMEOUT | Die Wartezeit, bevor eine Verbindung hergestellt wird. Wenn der Wert auf 0 eingestellt ist, wird unbegrenzt gewartet. | |
CURLOPT_CONNECTTIMEOUT_MS | Die Zeit, die auf einen Verbindungsversuch gewartet wird, in Millisekunden. Wenn auf 0 gesetzt, unendlich warten. | Hinzugefügt in cURL 7.16.2. Verfügbar ab PHP 5.2.3. |
CURLOPT_DNS_CACHE_TIMEOUT | Legen Sie die Zeit zum Speichern von DNS-Informationen im Speicher fest. Der Standardwert beträgt 120 Sekunden. | |
CURLOPT_FTPSSLAUTH | FTP-Authentifizierungsmethode: CURLFTPAUTH_SSL (versuchen Sie es zuerst mit SSL), CURLFTPAUTH_TLS (versuchen Sie es zuerst mit TLS) oder CURLFTPAUTH_DEFAULT (lassen Sie cURL automatisch entscheiden). | Hinzugefügt in cURL 7.12.2. |
CURLOPT_HTTP_VERSION | CURL_HTTP_VERSION_NONE (Standard, lässt Curl entscheiden, welche Version verwendet werden soll), CURL_HTTP_VERSION_1_0 (erzwingt HTTP/1.0) oder CURL_HTTP_VERSION_1_1 (erzwingt HTTP/1.1). | |
CURLOPT_INFILESIZE | Legen Sie die Größenbeschränkung der hochgeladenen Dateien in Bytes fest. | |
CURLOPT_LOW_SPEED_LIMIT | Wenn die Übertragungsgeschwindigkeit geringer als CURLOPT_LOW_SPEED_LIMIT (Byte/Sek.) ist, verwendet PHP CURLOPT_LOW_SPEED_TIME, um zu bestimmen, ob die Übertragung abgebrochen werden soll, weil sie zu langsam ist. | |
CURLOPT_LOW_SPEED_TIME | Wenn die Übertragungsgeschwindigkeit geringer als CURLOPT_LOW_SPEED_LIMIT (Byte/Sek.) ist, verwendet PHP CURLOPT_LOW_SPEED_TIME, um zu bestimmen, ob die Übertragung abgebrochen werden soll, weil sie zu langsam ist. | |
CURLOPT_MAXCONNECTS | Die maximal zulässige Anzahl von Verbindungen. Bei Überschreitung wird CURLOPT_CLOSEPOLICY verwendet, um zu bestimmen, welche Verbindungen gestoppt werden sollen. | |
CURLOPT_MAXREDIRS | Gibt die maximale Anzahl von HTTP-Weiterleitungen an. Diese Option wird mit CURLOPT_FOLLOWLOCATION verwendet. | |
CURLOPT_PORT | Wird verwendet, um den Verbindungsport anzugeben. (optional) | |
CURLOPT_PROTOCOLS | Bitfield bezieht sich auf CURLPROTO_* . Wenn diese Option aktiviert ist, begrenzt der Bitfeldwert, welche Protokolle libcurl während Übertragungen verwenden kann. Dadurch können Sie libcurl so kompilieren, dass es viele Protokolle unterstützt, aber nur eine Teilmenge davon verwendet, die verwendet werden darf. Standardmäßig verwendet libcurl alle unterstützten Protokolle. Siehe CURLOPT_REDIR_PROTOCOLS .Die verfügbaren Protokolloptionen sind: 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 | Hinzugefügt in cURL 7.19.4. |
CURLOPT_PROTOCOLS | Bitfield bezieht sich auf CURLPROTO_* . Wenn diese Option aktiviert ist, begrenzt der Bitfeldwert, welche Protokolle libcurl während Übertragungen verwenden kann. Dadurch können Sie libcurl so kompilieren, dass es viele Protokolle unterstützt, aber nur eine Teilmenge davon verwendet, die verwendet werden darf. Standardmäßig verwendet libcurl alle unterstützten Protokolle. Siehe CURLOPT_REDIR_PROTOCOLS .Die verfügbaren Protokolloptionen sind: 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 | Hinzugefügt in cURL 7.19.4. |
CURLOPT_PROXYAUTH | Überprüfungsmethode für HTTP-Proxy-Verbindungen. Verwenden Sie die Bitfeld-Flags in CURLOPT_HTTPAUTH, um die entsprechenden Optionen festzulegen. Für die Proxy-Authentifizierung werden derzeit nur CURLAUTH_BASIC und CURLAUTH_NTLM unterstützt. | Hinzugefügt in cURL 7.10.7. |
CURLOPT_PROXYPORT | Der Port des Proxyservers. Der Port kann auch in CURLOPT_PROXY festgelegt werden. | |
CURLOPT_PROXYTYPE | Entweder CURLPROXY_HTTP (Standard) oder CURLPROXY_SOCKS5 . | Hinzugefügt in cURL 7.10. |
CURLOPT_REDIR_PROTOCOLS | Bitfeldwert in CURLPROTO_* . Wenn aktiviert, begrenzt der Bitfeldwert die Protokolle, die der Transportthread verwenden kann, wenn er einer Umleitung folgt, wenn CURLOPT_FOLLOWLOCATION aktiviert ist. Dadurch können Sie den Transportthread bei der Umleitung auf eine Teilmenge zulässiger Protokolle beschränken. Standardmäßig lässt libcurl alle Protokolle außer FILE und SCP zu. Dies unterscheidet sich geringfügig von der Vorabversion 7.19.4, die bedingungslos allen unterstützten Protokollen folgt. Informationen zu Protokollkonstanten finden Sie unter CURLOPT_PROTOCOLS . | Hinzugefügt in cURL 7.19.4. |
CURLOPT_RESUME_FROM | Übergeben Sie einen Byte-Offset, wenn Sie die Übertragung fortsetzen (wird für die Wiederaufnahme der Übertragung verwendet). | |
CURLOPT_SSL_VERIFYHOST | 1 Überprüfen Sie, ob im Server-SSL-Zertifikat ein allgemeiner Name vorhanden ist. Anmerkung des Übersetzers: Unter „Common Name“ (gemeinsamer Name) versteht man im Allgemeinen das Ausfüllen des Domänennamens (Domain) oder der Subdomain (Subdomain), für die Sie ein SSL-Zertifikat beantragen möchten. 2 Überprüfen Sie, ob der allgemeine Name vorhanden ist und mit dem angegebenen Hostnamen übereinstimmt. | |
CURLOPT_SSLVERSION | Zu verwendende SSL-Version (2 oder 3). Standardmäßig erkennt PHP diesen Wert selbst, obwohl er in einigen Fällen möglicherweise manuell festgelegt werden muss. | |
CURLOPT_TIMECONDITION | Wenn es nach einer bestimmten durch CURLOPT_TIMEVALUE angegebenen Zeit bearbeitet wurde, verwenden Sie CURL_TIMECOND_IFMODSINCE , um die Seite zurückzugeben. Wenn es nicht geändert wurde und CURLOPT_HEADER wahr ist, wird ein „304 Not Modified“ -Header zurückgegeben. Wenn CURLOPT_HEADER falsch ist, verwenden Sie CURL_TIMECOND_IFUNMODSINCE. , der Standardwert ist CURL_TIMECOND_IFUNMODSINCE . | |
CURLOPT_TIMEOUT | Legen Sie die maximale Anzahl an Sekunden fest, die cURL ausführen darf. | |
CURLOPT_TIMEOUT_MS | Legt die maximale Anzahl an Millisekunden fest, die cURL ausführen darf. | Hinzugefügt in cURL 7.16.2. Verfügbar ab PHP 5.2.3. |
CURLOPT_TIMEVALUE | Legen Sie einen von CURLOPT_TIMECONDITION verwendeten Zeitstempel fest. Standardmäßig wird CURL_TIMECOND_IFMODSINCE verwendet. |
Für die optionalen Parameter der folgenden Optionen sollte value auf einen Wert vom Typ String festgelegt werden:
Optionen | Optionaler Wert | Bemerkung |
---|---|---|
CURLOPT_CAINFO | Der Name einer Datei, die ein oder mehrere Zertifikate zur Überprüfung durch den Server enthält. Dieser Parameter ist nur bei Verwendung mit CURLOPT_SSL_VERIFYPEER von Bedeutung. . | |
CURLOPT_CAPATH | Ein Verzeichnis, das mehrere CA-Zertifikate enthält. Diese Option wird mit CURLOPT_SSL_VERIFYPEER verwendet. | |
CURLOPT_COOKIE | Legen Sie den Inhalt des „Cookie:“- Teils der HTTP-Anfrage fest. Mehrere Cookies werden durch ein Semikolon gefolgt von einem Leerzeichen getrennt (z. B. „ Frucht=Apfel; Farbe=Rot “). | |
CURLOPT_COOKIEFILE | Der Name der Datei, die die Cookie-Daten enthält. Das Format der Cookie-Datei kann das Netscape-Format sein oder es können nur reine HTTP-Header-Informationen in der Datei gespeichert sein. | |
CURLOPT_COOKIEJAR | Eine Datei, die Cookie-Informationen speichert, nachdem die Verbindung hergestellt wurde. | |
CURLOPT_CUSTOMREQUEST | Verwenden Sie für die HTTP-Anfrage eine benutzerdefinierte Anfragenachricht anstelle von „GET“ oder „HEAD“ . Dies ist nützlich, um „DELETE“ oder andere verdecktere HTTP-Anfragen auszuführen. Gültige Werte sind „GET“ , „POST“ , „CONNECT“ usw. Das heißt, geben Sie hier nicht die gesamte HTTP-Anfrage ein. Beispielsweise ist die Eingabe von „GET /index.html HTTP/1.0rnrn“ falsch.
| |
CURLOPT_EGDSOCKET | Ähnlich wie CURLOPT_RANDOM_FILE , mit Ausnahme eines Entropy Gathering Daemon-Sockets. | |
CURLOPT_ENCODING | Der Wert von „Accept-Encoding:“ im HTTP-Anforderungsheader. Unterstützte Kodierungen sind „identity“ , „deflate“ und „gzip“ . Wenn es sich um die leere Zeichenfolge „“ handelt, werden alle unterstützten Kodierungstypen im Anforderungsheader gesendet. | Hinzugefügt in cURL 7.10. |
CURLOPT_FTPPORT | Dieser Wert wird verwendet, um die IP-Adresse zu erhalten, die für den FTP-Befehl „POST“ erforderlich ist. Der Befehl „POST“ weist den Remote-Server an, eine Verbindung zu der von uns angegebenen IP-Adresse herzustellen. Diese Zeichenfolge kann eine Klartext-IP-Adresse, ein Hostname, ein Netzwerkschnittstellenname (unter UNIX) oder einfach ein „-“ sein, um die Standard-IP-Adresse zu verwenden. | |
CURLOPT_INTERFACE | Der Name der Netzwerk-Sendeschnittstelle kann ein Schnittstellenname, eine IP-Adresse oder ein Hostname sein. | |
CURLOPT_KRB4LEVEL | Sicherheitsstufe KRB4 (Kerberos 4). Jeder der folgenden Werte ist gültig (in der Reihenfolge vom niedrigsten zum höchsten): „clear“ , „safe“ , „confidential“ , „private“. Wenn die Zeichenfolge mit keiner dieser Angaben übereinstimmt, wird „private“ verwendet. Wenn Sie diese Option auf NULL setzen, wird die KRB4-Sicherheitsauthentifizierung deaktiviert. Derzeit kann die KRB4-Sicherheitszertifizierung nur für FTP-Übertragungen verwendet werden. | |
CURLOPT_POSTFIELDS | Alle Daten werden über die Operation „POST“ im HTTP-Protokoll gesendet. Um eine Datei zu senden, stellen Sie dem Dateinamen ein @ voran und geben Sie den vollständigen Pfad an. Dieser Parameter kann als URL-codierte Zeichenfolge wie „ para1=val1¶2=val2&... “ übergeben werden oder ein Array mit dem Feldnamen als Schlüssel und den Felddaten als Wert verwenden. Wenn value ein Array ist, wird der Content-Type -Header auf multipart/form-data gesetzt. | |
CURLOPT_PROXY | HTTP-Proxy-Kanal. | |
CURLOPT_PROXYUSERPWD | Eine Zeichenfolge im Format „[Benutzername]:[Passwort]“, die zum Herstellen einer Verbindung zum Proxy verwendet wird. | |
CURLOPT_RANDOM_FILE | Der Name einer Datei, die zum Generieren des SSL-Zufallszahlen-Seeds verwendet wird. | |
CURLOPT_RANGE | In der Form „XY“ , wobei X und Y optionale Optionen sind, um den Datenbereich in Bytes zu erhalten. Der HTTP-Transportthread unterstützt auch mehrere solcher durch Kommas getrennten Duplikate wie „XY,NM“ . | |
CURLOPT_REFERER | Der Inhalt von „Referer:“ im HTTP-Anfrageheader. | |
CURLOPT_SSL_CIPHER_LIST | Eine Liste von SSL-Verschlüsselungsalgorithmen. Beispielsweise sind RC4-SHA und TLSv1 beide verfügbare Verschlüsselungslisten. | |
CURLOPT_SSLCERT | Der Name einer Datei, die ein Zertifikat im PEM-Format enthält. | |
CURLOPT_SSLCERTPASSWD | Für die Verwendung des CURLOPT_SSLCERT -Zertifikats ist ein Passwort erforderlich. | |
CURLOPT_SSLCERTTYPE | Der Typ des Zertifikats. Unterstützte Formate sind „PEM“ (Standard), „DER“ und „ENG“ . | Hinzugefügt in cURL 7.9.3. |
CURLOPT_SSLENGINE | Krypto-Engine-Variable, die für den in CURLOPT_SSLKEY angegebenen privaten SSL-Schlüssel verwendet wird. | |
CURLOPT_SSLENGINE_DEFAULT | Variablen, die für asymmetrische Verschlüsselungsvorgänge verwendet werden. | |
CURLOPT_SSLKEY | Der Name der Datei, die den privaten SSL-Schlüssel enthält. | |
CURLOPT_SSLKEYPASSWD | Das Passwort für den in CURLOPT_SSLKEY angegebenen privaten SSL-Schlüssel.
| |
CURLOPT_SSLKEYTYPE | Der Verschlüsselungstyp des in CURLOPT_SSLKEY angegebenen privaten Schlüssels. Die unterstützten Schlüsseltypen sind „PEM“ (Standardwert), „DER“ und „ENG“ . | |
CURLOPT_URL | Die abzurufende URL-Adresse kann auch in der Funktion „curl_init()“ festgelegt werden. | |
CURLOPT_USERAGENT | Fügen Sie eine „User-Agent:“- Headerzeichenfolge in die HTTP-Anfrage ein. | |
CURLOPT_USERPWD | Übergeben Sie den für eine Verbindung erforderlichen Benutzernamen und das Passwort im Format: „[Benutzername]:[Passwort]“ . |
Für die optionalen Parameter der folgenden Optionen sollte der Wert auf ein Array festgelegt werden:
Optionen | Optionaler Wert | Bemerkung |
---|---|---|
CURLOPT_HTTP200ALIASES | 200 Antwortcode-Array, die Antwort im Array wird als korrekte Antwort betrachtet, andernfalls wird sie als Fehler betrachtet. | Hinzugefügt in cURL 7.10.3. |
CURLOPT_HTTPHEADER | Ein Array, das zum Festlegen von HTTP-Header-Feldern verwendet wird. Verwenden Sie zum Festlegen ein Array in der folgenden Form: array('Content-type: text/plain', 'Content-length: 100') | |
CURLOPT_POSTQUOTE | Eine Reihe von FTP-Befehlen, die auf dem Server ausgeführt werden, nachdem die FTP-Anfrage ausgeführt wurde. | |
CURLOPT_QUOTE | Eine Reihe von FTP-Befehlen, die vor der FTP-Anfrage auf dem Server ausgeführt werden sollen. |
Für die optionalen Parameter der folgenden Optionen sollte der Wert auf eine Stream-Ressource festgelegt werden (z. B. mit fopen()):
Optionen | Optionaler Wert |
---|---|
CURLOPT_FILE | Legen Sie den Speicherort der Ausgabedatei fest. Der Wert ist ein Ressourcentyp. Der Standardwert ist STDOUT (Browser). |
CURLOPT_INFILE | Die Dateiadresse, die beim Hochladen einer Datei gelesen werden muss. Der Wert ist ein Ressourcentyp. |
CURLOPT_STDERR | Legen Sie eine Fehlerausgabeadresse fest. Der Wert ist ein Ressourcentyp und ersetzt den Standardwert STDERR . |
CURLOPT_WRITEHEADER | Legen Sie die Dateiadresse fest, an die der Inhalt des Headerteils geschrieben wird, und der Wert ist ein Ressourcentyp. |
Für die optionalen Parameter der folgenden Optionen sollte der Wert auf den Namen einer Rückruffunktion gesetzt werden:
Optionen | Optionaler Wert |
---|---|
CURLOPT_HEADERFUNCTION | Legen Sie eine Rückruffunktion fest. Diese Funktion verfügt über zwei Parameter. Der erste ist das cURL-Ressourcenhandle und der zweite sind die Ausgabeheaderdaten. Die Ausgabe von Header-Daten muss auf dieser Funktion basieren, die die Größe der geschriebenen Daten zurückgibt. |
CURLOPT_PASSWDFUNCTION | Legen Sie eine Rückruffunktion mit drei Parametern fest. Der erste ist das cURL-Ressourcenhandle, der zweite ist eine Passwortabfrage und der dritte Parameter ist die maximal zulässige Passwortlänge. Gibt den Wert des Passworts zurück. |
CURLOPT_PROGRESSFUNCTION | Richten Sie eine Rückruffunktion mit drei Parametern ein. Der erste ist das cURL-Ressourcenhandle, der zweite ist eine Dateideskriptorressource und der dritte ist die Länge. Gibt die enthaltenen Daten zurück. |
CURLOPT_READFUNCTION | Name der Rückruffunktion. Diese Funktion sollte drei Parameter akzeptieren. Der erste ist die cURL-Ressource; der zweite ist die Stream-Ressource, die über die Option CURLOPT_INFILE übergeben wird; der dritte Parameter ist die maximale Datenmenge, die gelesen werden kann. Die Callback-Funktion muss einen String zurückgeben, dessen Länge kleiner oder gleich der angeforderten Datenmenge ist (dritter Parameter). Im Allgemeinen aus der eingehenden Stream-Ressource lesen. Gibt die leere Zeichenfolge als EOF- Signal (Ende der Datei) zurück. |
CURLOPT_WRITEFUNCTION | Name der Rückruffunktion. Diese Funktion sollte zwei Parameter akzeptieren. Die erste ist die cURL-Ressource; die zweite ist die zu schreibende Datenzeichenfolge. Die Daten müssen innerhalb der Funktion gespeichert werden. Die Funktion muss die genaue Anzahl der zum Schreiben der Daten übergebenen Bytes zurückgeben, andernfalls wird die Übertragung durch einen Fehler unterbrochen. |
Gibt TRUE bei Erfolg oder FALSE bei Fehler zurück.
Version | veranschaulichen |
---|---|
5.2.10 | Einführung von CURLOPT_PROTOCOLS und CURLOPT_REDIR_PROTOCOLS . |
5.1.0 | Einführung von CURLOPT_AUTOREFERER , CURLOPT_BINARYTRANSFER , CURLOPT_FTPSSLAUTH , CURLOPT_PROXYAUTH und CURLOPT_TIMECONDITION . |
5.0.0 | Einführung von CURLOPT_FTP_USE_EPRT , CURLOPT_NOSIGNAL , CURLOPT_UNRESTRICTED_AUTH , CURLOPT_BUFFERSIZE , CURLOPT_HTTPAUTH , CURLOPT_PROXYPORT , CURLOPT_PROXYTYPE , CURLOPT_SSLCERTTYPE und CURLOPT_HTTP200ALIASES . |
Initialisieren Sie eine neue cURL-Sitzung und rufen Sie eine Webseite ab
<?php// Erstellen Sie eine neue cURL-Ressource $ch = curl_init();// Legen Sie die URL und die entsprechenden Optionen fest curl_setopt($ch, CURLOPT_URL, "http://www.example.com/"); , CURLOPT_HEADER, false);// Schnappen Sie sich die URL und übergeben Sie sie an den Browser. curl_exec($ch);//Schließen Sie die cURL-Ressource und geben Sie die Systemressource frei. curl_close($ch);?>
Beispiel für einen Datei-Upload:
<?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);?>
Die Ausgabeergebnisse des obigen Beispiels lauten wie folgt:
Array( [name] => Foo)Array( [file] => Array ( [name] => test.png [type] => image/png [tmp_name] => /tmp/phpcpjNeQ [error] => 0 [ Größe] => 279 ))
Bei der Übergabe eines Arrays an CURLOPT_POSTFIELDS codiert cURL die Daten in multipart/form-data, während bei der Übergabe einer URL-codierten Zeichenfolge die Daten in application/x-www-form-urlencoded codiert werden.