Heim  >  Artikel  >  Backend-Entwicklung  >  Was ist die Verwendung der PHP-Curl-Funktion?

Was ist die Verwendung der PHP-Curl-Funktion?

藏色散人
藏色散人Original
2021-10-20 10:39:452201Durchsuche

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.

Was ist die Verwendung der PHP-Curl-Funktion?

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
• 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.

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.

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-Tutorial

Das 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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn