cURL ist ein Tool, das URL-Syntax zum Übertragen von Dateien und Daten verwendet. Es unterstützt viele Protokolle wie HTTP, FTP, TELNET usw. Das Beste daran ist, dass PHP auch die cURL-Bibliothek unterstützt. In diesem Artikel werden einige erweiterte Funktionen von cURL und deren Verwendung in PHP vorgestellt.
Warum cURL verwenden?
Ja, wir können Webinhalte über andere Methoden abrufen. Da ich faul sein möchte, verwende ich meistens nur einfache PHP-Funktionen:
$content = file_get_contents("http://www.aezo.cn"); // or $lines = file("http:/<span style="font-family: Simsun;">/www.aezo.cn</span><span style="font-family: Simsun;">");</span> // or readfile("http://www.aezo.cn");
Allerdings mangelt es diesem Ansatz an Flexibilität und effektiver Fehlerbehandlung. Darüber hinaus können Sie damit einige schwierige Aufgaben nicht erledigen – etwa den Umgang mit Cookies, die Validierung, das Absenden von Formularen, das Hochladen von Dateien usw.
Grundstruktur
Bevor wir komplexere Funktionen erlernen, werfen wir einen Blick auf die grundlegenden Schritte zum Einrichten einer cURL-Anfrage in PHP:
// 1. 初始化 $ch = curl_init(); // 2. 设置选项,包括URL curl_setopt($ch, CURLOPT_URL, "http://www.aezo.cn"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HEADER, 0); // 3. 执行并获取HTML文档内容 $output = curl_exec($ch); // 4. 释放curl句柄 curl_close($ch);
Der zweite Schritt (also curl_setopt()) ist der wichtigste, und hier liegt das ganze Geheimnis. Es gibt eine lange Liste einstellbarer cURL-Parameter, die verschiedene Details der URL-Anfrage angeben. Es kann schwierig sein, sie alle auf einmal zu lesen und zu verstehen, deshalb werden wir heute nur die gebräuchlicheren und nützlicheren Optionen ausprobieren.
Auf Fehler prüfen
Sie können eine Anweisung hinzufügen, um auf Fehler zu prüfen (dies ist jedoch nicht erforderlich):
// ... $output = curl_exec($ch); if ($output === FALSE) { echo "cURL Error: " . curl_error($ch); } // ...
Bitte beachten Sie, dass wir beim Vergleichen „ === FALSE“, nicht „== FALSE“. Denn wir müssen zwischen einer leeren Ausgabe und dem booleschen Wert FALSE unterscheiden, der der eigentliche Fehler ist.
Das Obige stellt den schnellen Start von cURL basierend auf PHP (1) vor, einschließlich verschiedener Aspekte. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.