PHP/cURL
Das PHP-Modul, das verwendet wird, um auf die Funktionen von . zuzugreifen die libcurl Bibliothek heißt PHP/cURL. Sie müssen überprüfen, ob dies in PHP aktiviert ist oder nicht, bevor Sie die Beispiele dieses Tutorials testen. Sie können das ausführen phpinfo() Funktion, um zu überprüfen, ob dieses Modul in PHP aktiviert ist oder nicht.
phpinfo();?>
Wenn das Modul in PHP nicht standardmäßig aktiviert ist, führen Sie die folgenden Befehle aus, um php-curl auf Ubuntu zu installieren und zu aktivieren und den Apache-Server neu zu starten.
$ sudo apt install libapache2-mod-php php-curl$ sudo service Apache2 Neustart
Meist verwendete Curl-Funktionen
Funktionsname | Zweck |
---|---|
curl_init() | Es wird verwendet, um eine cURL-Sitzung zu initialisieren. |
curl_exec() | Es wird verwendet, um die gestartete cURL-Sitzung auszuführen. |
curl_close() | Es wird verwendet, um eine cURL-Sitzung zu schließen. |
curl_error() | Es wird verwendet, um die letzte Fehlermeldung der aktuellen cURL-Sitzung zurückzugeben. |
curl_errno | Es wird verwendet, um die letzte Fehlernummer der aktuellen cURL-Sitzung zurückzugeben. |
curl_setopt() | Es wird verwendet, um eine Option für eine cURL-Übertragung einzustellen. |
curl_setopt_array() | Es wird verwendet, um mehrere Optionen für eine cURL-Übertragung festzulegen. |
curl_reset() | Es wird verwendet, um alle Optionen einer libcurl-Sitzung zurückzusetzen. |
curl_pause() | Es wird verwendet, um eine Verbindung zu unterbrechen. |
curl_version() | Es wird verwendet, um die Informationen der cURL-Version zu erhalten. |
Beispiel 1: Abrufen der Informationen von einer beliebigen URL-Adresse
Erstellen Sie eine PHP-Datei mit dem folgenden Skript, um die Informationen von einer bestimmten URL-Adresse abzurufen. Die Funktion curl_init() wird hier verwendet, um die cURL-Sitzung für die definierte URL-Adresse zu initialisieren. Der Erste curl_setopt() Funktion wird verwendet, um den Seiteninhalt der definierten URL-Adresse zurückzugeben. 1 wird als dritter Argumentwert dieser Funktion übergeben, um den Seiteninhalt als Stringwert zurückzugeben. Als nächstes die zweite curl_setopt() Funktion wird verwendet, um die Header-Informationen von der Ausgabe wegzulassen. Die Funktion curl_exec() führt die cURL-Sitzung aus und speichert den Rückgabewert in der Variablen $result, die später ausgegeben wird.
//Die cURL-Sitzung initialisieren$ch = curl_init("https://linuxhint.com/");
// Den Seiteninhalt zurückgeben
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//Entferne die Header-Informationen aus der Ausgabe
curl_setopt($ch, CURLOPT_HEADER, 0);
//Die cURL-Sitzung ausführen
$result = curl_exec($ch);
//Drucken Sie den zurückgegebenen Wert der Website
echo $ergebnis;
//CURL-Sitzung schließen
curl_close($ch);
?>
Ausgabe:
Die folgende Ausgabe wird erscheinen, nachdem das obige Skript ausgeführt wurde. „https://linuxhint.com“ wird im Skript als URL-Adresse angegeben. Der Inhalt dieser Seite wird also angezeigt.
Beispiel 2: Schreiben Sie die cURL-Ausgabe in eine Datei
Im vorherigen Beispiel wird die Ausgabe des Skripts im Browser angezeigt. Sie können den Rückgabewert einer beliebigen URL-Adresse aber auch mit cURL . in einer Datei speichern. Erstellen Sie eine PHP-Datei mit dem folgenden Skript, um die URL-Adresse mithilfe eines HTML-Formulars zu übernehmen und die cURL-Sitzung für diese URL zu initialisieren und den Seiteninhalt in einer Textdatei zu speichern, anstatt ihn im Browser anzuzeigen. CURLOPT_FILE Option wird verwendet in curl_setopt() Funktion zum Speichern der Ausgabe nach der Ausführung der cURL-Sitzung in Ausgabe.TXT Datei. Wenn die ungültige URL-Adresse vom Formular übermittelt wird, werden die Fehlerinformationen anstelle des Seiteninhalts in die Datei geschrieben.
// Überprüfen Sie, ob die Schaltfläche zum Senden gedrückt wurde oder nicht or
if(isset($_GET['url']))
//Überprüfen Sie, ob die URL leer ist oder nicht
if($_GET['url'] != "")
//Setze den URL-Wert
$url = $_GET['url'];
//Die cURL-Sitzung initialisieren
$ch = curl_init($url);
// Dateihandler öffnen, um in eine Textdatei zu schreiben
$fh = fopen("Ausgabe.txt", "w");
//Option zum Schreiben der Ausgabe in eine Datei setzen
curl_setopt($ch, CURLOPT_FILE, $fh);
//Kopfzeileninformationen in eine Datei aufnehmen
curl_setopt($ch, CURLOPT_HEADER, 1);
//Die cURL-Sitzung ausführen
curl_exec($ch);
//Auf cURL-Fehler prüfen
if(curl_error($ch))
$error = curl_errno($ch).":". curl_error($ch);
fwrite($fh, $fehler);
echo "Die Ausgabe der cURL-Sitzung wurde geschrieben in Ausgabe.TXT
Datei";
//CURL-Sitzung schließen
curl_close($ch);
//Datei schließen
fclose($fh);
sonst
echo "Es ist keine URL-Adresse festgelegt.";
?>
Ausgabe:
Das folgende Formular wird angezeigt, nachdem das Skript ausgeführt wurde. Hier wird als URL-Adresse eine gültige URL-Adresse angegeben.
Die folgende Ausgabe erscheint nach dem Ausführen des Drückens des Senden-Buttons.
Beispiel 3: Setzen Sie die cURL-Option mit dem Array
Wenn Sie zum Zeitpunkt der Ausführung der cURL-Sitzung mehrere cURL-Optionen festlegen möchten, müssen Sie die Funktion curl_setopt_array() verwenden. Erstellen Sie eine PHP-Datei mit dem folgenden Skript, um die Verwendung dieser Funktion zu kennen. Mit einer Array-Variablen werden zwei cURL-Optionen gesetzt, und diese Variable wird als Optionsvariable des curl_setopt_array() Funktion.
//Definiere das Array der Optionen$Standardwerte = Array(
CURLOPT_URL => 'http://Beispiel.com/',
CURLOPT_POST => wahr
);
//Initialisierung der cURL-Sitzung
$ch = curl_init();
// Den Seiteninhalt basierend auf dem Optionsarray zurückgeben
curl_setopt_array($ch, $defaults);
//Drucken Sie den zurückgegebenen Wert
echo curl_exec($ch);
?>
Ausgabe:
Die folgende Ausgabe erscheint nach dem Ausführen des Skripts. „http://Beispiel.com“ wird im Skript als URL-Adresse angegeben.
Fazit
Die einfache Verwendung von cURL in PHP wird in diesem Tutorial anhand verschiedener Beispiele gezeigt. In PHP gibt es viele eingebaute cURL-Funktionen, um verschiedene Arten von Aufgaben zu erledigen. Dieses Tutorial wird den Lesern helfen, die grundlegende Verwendung von cURL in PHP zu kennen.