Heim > Artikel > Backend-Entwicklung > Was ist die Verwendung der PHP-Curl-Funktion?
Verwendung der PHP-Curl-Funktion: 1. Verwenden Sie „curl_init“, um eine neue cURL-Ressource zu erstellen. 2. Legen Sie die URL und die entsprechenden Optionen über „curl_setopt“ fest. 3. Erfassen Sie die URL über „curl_exec“ und übergeben Sie sie an den Browser. 4. Verwenden Sie „curl_close“, um zu schließen cURL-Ressourcen sind ausreichend.
Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer
Zusammenfassung der Verwendung der Curl-Funktion von PHP
Um cURL zum Senden von URL-Anfragen zu verwenden, sind die spezifischen Schritte wie folgt Grob in die folgenden vier Schritte unterteilt:
1. Anforderungsoptionen festlegen
3. Führen Sie eine cURL-Sitzung aus und erhalten Sie zugehörige Antworten.
4 Beispiel für 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); ?>
Curl-Funktionen:
• curl_close – Schließt eine cURL-Sitzung • curl_copy_handle – Kopiert ein cURL-Handle und alle seine Optionen • curl_errno – Gibt die letzte Fehlernummer zurück
• curl_error – Gibt eine zurück Fehler, der den neuesten Fehler in der aktuellen Sitzungszeichenfolge schützt• curl_escape – Kodieren Sie die angegebene Zeichenfolge mithilfe einer URL• curl_exec – Führen Sie eine cURL-Sitzung aus
CURLOPT_NOPROGRESS: Wenn Sie nicht möchten, dass PHP einen Fortschrittsbalken für CURL-Übertragungen anzeigt, setzen Sie diese Option auf einen Wert ungleich Null.
• curl_file_create – Erstellen Sie ein CURLFile-Objekt
• curl_getinfo – Rufen Sie Informationen über ein cURL-Verbindungsressourcenhandle ab ?? Wenn CURLOPT_RETURNTRANSFER gesetzt ist, wird der abgerufene Ausgabetext-Stream zurückgegeben.
•curl_multi_info_read – Relevante Übertragungsinformationen für die aktuell analysierte cURL abrufen.
•curl_multi_init – Ein neues cURL-Batch-Handle zurückgeben.
•curl_multi_remove_handle – Eine Handle-Ressource in der Curl-Batch-Handle-Ressource entfernen. curl_multi_select – Warten auf alle aktiven cURL-Verbindungen in Stapeln
• curl_multi_setopt – Legen Sie eine Option für die cURL-Parallelverarbeitung fest
• curl_multi_strerror – Rückgabezeichenfolge, die den Fehlercode beschreibt
• curl_pause – Pausieren und Pausieren einer Verbindung aufheben
• curl_reset – Setzen Sie alle Optionen für eine libcurl-Sitzung zurück handle
• curl_setopt_array – Legen Sie Optionen in großen Mengen für cURL-Übertragungssitzungen fest
• curl_setopt – Legen Sie eine Option für eine cURL-Übertragung fest
• curl_share_close – Schließen Sie ein cURL-Freigabehandle
• curl_share_init – Initialisieren Sie ein cURL-Freigabehandle
• curl_share_setopt – Legen Sie eine Option für fest ein cURL-Freigabehandle.
•curl_strerror – Rückgabezeichenfolge, die den angegebenen Fehlercode beschreibt.
•curl_unescape – Dekodierung der angegebenen URL-codierten Zeichenfolge.
•curl_version – Abrufen von cURL-Versionsinformationen.
Einige Parameterreferenz Die folgenden Optionen werden als Long-Shaping-Nutzung behandelt (angegeben im Optionsparameter):
CURLOPT_INFILESIZE: Wenn Sie eine Datei auf die Remote-Site hochladen, teilt diese Option PHP die Größe der von Ihnen hochgeladenen Datei mit.
CURLOPT_VERBOSE: Wenn Sie möchten, dass CURL jedes unerwartete Ereignis meldet, legen Sie diese Option auf einen Wert ungleich Null fest.
CURLOPT_HEADER: Wenn Sie einen Header in die Ausgabe einschließen möchten, setzen Sie diese Option auf einen Wert ungleich Null.
Hinweis: PHP setzt diese Option automatisch auf einen Wert ungleich Null. Sie sollten diese Option nur zu Debugging-Zwecken ändern. CURLOPT_NOBODY: Wenn Sie den Körperteil nicht in die Ausgabe einbeziehen möchten, setzen Sie diese Option auf einen Wert ungleich Null.
CURLOPT_FAILONERROR: Wenn Sie möchten, dass PHP nicht angezeigt wird, wenn ein Fehler auftritt (HTTP-Code-Rückgabe größer oder gleich 300), setzen Sie diese Option auf einen Wert ungleich Null. Das Standardverhalten besteht darin, eine normale Seite zurückzugeben und den Code zu ignorieren.
CURLOPT_UPLOAD: Wenn Sie möchten, dass PHP sich auf das Hochladen vorbereitet, setzen Sie diese Option auf einen Wert ungleich Null.
CURLOPT_POST: Wenn Sie möchten, dass PHP einen regulären HTTP-POST durchführt, setzen Sie diese Option auf einen Wert ungleich Null. Dieser POST ist vom gewöhnlichen Typ application/x-www-from-urlencoded und wird hauptsächlich von HTML-Formularen verwendet.
CURLOPT_FTPLISTONLY: Setzen Sie diese Option auf einen Wert ungleich Null und PHP listet die Verzeichnisnamen für FTP auf.
CURLOPT_FTPAPPEND: Setzen Sie diese Option auf einen Wert ungleich Null und PHP wendet die Remote-Datei an, anstatt sie zu überschreiben.
CURLOPT_NETRC: Setzen Sie diese Option auf einen Wert ungleich Null und PHP sucht in Ihrer ~./netrc-Datei nach dem Benutzernamen und dem Passwort der Remote-Site, zu der Sie eine Verbindung herstellen möchten.
CURLOPT_FOLLOWLOCATION: Setzen Sie diese Option auf einen Header ungleich Null (wie „Location:“) und der Server sendet ihn als Teil des HTTP-Headers (beachten Sie, dass dies rekursiv ist, PHP sendet einen Header wie „Location:“). .
CURLOPT_PUT: Setzen Sie diese Option auf einen Wert ungleich Null, um eine Datei über HTTP hochzuladen. Um diese Datei hochzuladen, müssen Sie die Optionen CURLOPT_INFILE und CURLOPT_INFILESIZE festlegen.
CURLOPT_MUTE: Setzen Sie diese Option auf einen Wert ungleich Null und PHP verhält sich für die CURL-Funktion völlig stumm.
CURLOPT_TIMEOUT: Legen Sie eine lange Ganzzahl als maximale Anzahl von Sekunden fest.
CURLOPT_LOW_SPEED_LIMIT: Legen Sie eine lange Ganzzahl fest, um zu steuern, wie viele Bytes übertragen werden.
CURLOPT_LOW_SPEED_TIME: Legen Sie eine lange Ganzzahl fest, um zu steuern, wie viele Sekunden die durch CURLOPT_LOW_SPEED_LIMIT angegebene Anzahl von Bytes übertragen werden soll.
CURLOPT_RESUME_FROM: Übergeben Sie einen langen Parameter, der die Byte-Offset-Adresse enthält (das Startformular, zu dem Sie übertragen möchten).
CURLOPT_SSLVERSION: Übergeben Sie einen langen Parameter, der die SSL-Version enthält. Standardmäßig erledigt PHP seine eigene harte Arbeit, für mehr Sicherheit müssen Sie es manuell festlegen.
CURLOPT_TIMECONDITION: Übergeben Sie einen langen Parameter, um anzugeben, wie mit dem Parameter CURLOPT_TIMEVALUE umgegangen werden soll. Sie können diesen Parameter auf TIMECOND_IFMODSINCE oder TIMECOND_ISUNMODSINCE setzen. Dies gilt nur für HTTP.
CURLOPT_TIMEVALUE: Vergeht eine Anzahl von Sekunden vom 1.1.1970 bis heute. Diese Zeit wird als angegebener Wert von der Option CURLOPT_TIMEVALUE oder vom Standardwert TIMECOND_IFMODSINCE verwendet.
Die Werte der folgenden Optionen werden als Zeichenfolgen behandelt:
CURLOPT_URL: Dies ist die URL-Adresse, die Sie mit PHP abrufen möchten. Sie können diese Option auch während der Initialisierung mit der Funktion „curl_init()“ festlegen.
CURLOPT_USERPWD: Übergeben Sie eine Zeichenfolge in der Form [Benutzername]:[Passwort] und verwenden Sie PHP, um eine Verbindung herzustellen.
CURLOPT_PROXYUSERPWD: Übergeben Sie eine Zeichenfolge im Format [Benutzername]:[Passwort], um eine Verbindung zum HTTP-Proxy herzustellen.
CURLOPT_RANGE: Übergeben Sie einen Bereich, den Sie angeben möchten. Es sollte im Format „X-Y“ vorliegen, wobei X oder Y ausgeschlossen sind. HTTP-Übertragungen unterstützen auch mehrere durch Kommas getrennte Intervalle (X-Y, N-M).
CURLOPT_POSTFIELDS: Übergeben Sie eine Zeichenfolge mit allen Daten als HTTP-„POST“-Operation.
CURLOPT_REFERER: Eine Zeichenfolge, die einen „Referer“-Header in der HTTP-Anfrage enthält.
CURLOPT_USERAGENT: Eine Zeichenfolge, die einen „User-Agent“-Header in der HTTP-Anfrage enthält.
CURLOPT_FTPPORT: Übergeben Sie eine IP-Adresse, die die vom FTP-Befehl „POST“ verwendete IP-Adresse enthält. Diese POST-Anweisung weist den Remote-Server an, eine Verbindung zu der von uns angegebenen IP-Adresse herzustellen. Diese Zeichenfolge kann eine IP-Adresse, ein Hostname, ein Netzwerkschnittstellenname (unter UNIX) oder „-“ (verwenden Sie die Standard-IP-Adresse des Systems) sein.
CURLOPT_COOKIE: Übergeben Sie eine Header-Verbindung, die ein HTTP-Cookie enthält.
CURLOPT_SSLCERT: Übergeben Sie eine Zeichenfolge, die das Zertifikat im PEM-Format enthält.
CURLOPT_SSLCERTPASSWD: Übergeben Sie ein Passwort, das das erforderliche Passwort zur Verwendung des CURLOPT_SSLCERT-Zertifikats enthält.
CURLOPT_COOKIEFILE: Übergeben Sie eine Zeichenfolge mit dem Namen der Datei, die Cookie-Daten enthält. Diese Cookie-Datei kann im Netscape-Format vorliegen oder ein Stapel von in der Datei gespeicherten HTTP-Headern sein.
CURLOPT_CUSTOMREQUEST: Übergeben Sie beim Stellen einer HTTP-Anfrage ein Zeichen, das von GET oder HEAD verwendet werden soll. Übergeben Sie eine Zeichenfolge, die anstelle von GET oder HEAD verwendet werden soll, wenn Sie eine HTTP-Anfrage ausführen. Dies ist nützlich, um eine andere, undurchsichtigere HTTP-Anfrage auszuführen.
Hinweis: Vor dem Bestätigen tun Sie dies noch nicht, wenn der Server den Befehl unterstützt .
Die folgenden Optionen erfordern eine Dateibeschreibung (erhalten mit der Funktion fopen()):
CURLOPT_FILE: Diese Datei ist die von Ihnen gesendete Ausgabedatei. Der Standardwert ist STDOUT dokumentieren.
CURLOPT_WRITEHEADER: Diese Datei enthält den Header-Teil Ihrer Ausgabe.
CURLOPT_STDERR: In dieser Datei werden Fehler anstelle von stderr geschrieben.
Empfohlenes Lernen: „
PHP-Video-TutorialDas obige ist der detaillierte Inhalt vonWas ist die Verwendung der PHP-Curl-Funktion?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!