Heim  >  Artikel  >  Backend-Entwicklung  >  Mehrere Beispiele für PHP Curl

Mehrere Beispiele für PHP Curl

WBOY
WBOYOriginal
2016-07-30 13:29:46817Durchsuche
[Netzwerkprogrammierung] Mehrere Beispiele für PHP Curl

Mit der cURL-Bibliothek von PHP können Webseiten einfach und effektiv erfasst werden. Sie müssen lediglich ein Skript ausführen und die von Ihnen gecrawlten Webseiten analysieren. Anschließend können Sie die gewünschten Daten programmgesteuert abrufen. Ganz gleich, ob Sie Teildaten aus einem Link abrufen, eine XML-Datei in eine Datenbank importieren oder einfach nur den Inhalt einer Webseite abrufen möchten: cURL ist eine leistungsstarke PHP-Bibliothek.

CURL-Funktionsbibliothek (Client-URL-Bibliotheksfunktion) in PHP

curl_close – eine Curl-Sitzung schließen
curl_copy_handle – alle Inhalte und Parameter einer Curl-Verbindungsressource kopieren
curl_errno – Gibt zurück eine numerische Zahl, die Fehlerinformationen der aktuellen Sitzung enthält
curl_error – Gibt eine Zeichenfolge mit Fehlerinformationen der aktuellen Sitzung zurück
curl_exec – Führt eine Curl-Sitzung aus
curl_getinfo – Ruft Informationen über ein Curl-Verbindungsressourcenhandle ab
curl_init – Eine Curl-Sitzung initialisieren
curl_multi_add_handle – Eine separate Curl-Handle-Ressource zu einer Curl-Batch-Sitzung hinzufügen
curl_multi_close – Eine Batch-Handle-Ressource schließen
curl_multi_exec – Ein Curl-Batch-Handle analysieren
curl_multi_getcontent – ​​Gibt den Text zurück Stream der erhaltenen Ausgabe
curl_multi_info_read – Ruft die relevanten Übertragungsinformationen des aktuell analysierten Curls ab
curl_multi_init – Initialisiert eine Curl-Batch-Handle-Ressource
curl_multi_remove_handle – Entfernt ein Handle in den Curl-Batch-Handle-Ressourcenressourcen
curl_multi_select – Alle mit der cURL-Erweiterung verknüpften Sockets abrufen, die dann „ausgewählt“ werden können
curl_setopt_array — Sitzungsparameter für einen Curl in Form eines Arrays festlegen
curl_setopt — Sitzungsparameter für einen Curl festlegen
curl_version – Curl-bezogene Versionsinformationen abrufen

Die Funktion der Funktion „curl_init()“ besteht darin, eine Curl-Sitzung zu initialisieren. Der einzige Parameter der Funktion „curl_init()“ ist optional und stellt eine URL-Adresse dar.
Die Funktion „curl_exec()“ wird zum Ausführen einer Curl-Sitzung verwendet. Der einzige Parameter ist das von der Funktion „curl_init()“ zurückgegebene Handle.
Die Funktion „curl_close()“ wird zum Schließen einer Curl-Sitzung verwendet. Der einzige Parameter ist das von der Funktion „curl_init()“ zurückgegebene Handle.

Beispiel 1: Einfaches Beispiel

Grundlegendes Beispiel﹤?php
// Ein cURL-Objekt initialisieren
$curl = curl_init ();
// Legen Sie die URL fest, die Sie crawlen müssen
curl_setopt($curl, CURLOPT_URL, 'http://www.cmx8.cn');
// Legen Sie den Header fest
curl_setopt( $curl, CURLOPT_HEADER, 1);
//Setzen Sie cURL-Parameter so, dass die Ergebnisse in einer Zeichenfolge gespeichert oder auf dem Bildschirm ausgegeben werden müssen.
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
// cURL ausführen und die Webseite anfordern
$data = curl_exec($curl);
// URL-Anfrage schließen
curl_close( $curl );
//Anzeige der erhaltenen Daten
var_dump($data);

?>

Beispiel 2: POST-Daten

sendSMS.php, das zwei Formularfelder akzeptieren kann, eines ist die Telefonnummer und das andere ist der Textnachrichteninhalt.

POST-Daten ﹤?php
$phoneNumber ='13812345678';
$message ='ThisMessagewasgenerated by curlandphp';
$curlPost = 'pNUMBER =' .urlencode($phoneNumber) ,'http://www.lxvoip.com/sendSMS.php');
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);
$data = curl_exec();
curl_close($ch);
?﹥

Beispiel 3: Verwendung eines Proxyservers

Verwendung eines Proxyservers
﹤?php $ch = curl_init( );curl_setopt($ch, CURLOPT_URL ,'http://www.cmx8.cn');
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1) ;
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, 1);
curl_setopt($ch, CURLOPT_PROXY, 'proxy.lxvoip.com:1080');
curl_setopt($ch, CURLOPT_PROXYUSERPWD, 'user:password' );
$data = curl_exec() ;
curl_close($ch);
?﹥

Beispiel 4: Simulierte Anmeldung

Curl simulierte Anmeldung diskuz Programm, geeignet für DZ7.0, ändern Sie den Benutzernamen in. Ändern Sie einfach Ihren Benutzernamen und Ihr Benutzerpasswort in Ihr Passwort.

Curl simuliertes Login-Discuz-Programm /**
* Curl simuliertes Login-Discuz-Programm
* Forum-Anmeldefunktion mit aktiviertem Bestätigungscode wurde noch nicht implementiert
*/

!extension_loaded('curl') && die('Die Curl-Erweiterung ist nicht geladen.');

$discuz_url = 'http://www.lxvoip.com';//Forumadresse
$login_url = $discuz_url .'/logging.php?action=login' ;//Anmeldeseitenadresse
$get_url = $discuz_url .'/my.php?item=threads'; //Mein Beitrag

$post_fields = array(
//Das Folgende Zwei Elemente müssen nicht geändert werden
$post_fields['loginfield'] = 'username';
$post_fields['loginsubmit'] = 'true'; post_fields['username'] = 'lxvoip'; 🎜>$post_fields['password'] = '88888888'
//Sicherheitsfrage
$post_fields['questionid'] = 0;
$ post_fields['answer'] = '';  
//@todo Bestätigungscode                                                                                      curl_init($login_url);
curl _setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
preg_match('/<.); ;inputs*type="hidden"s*name="formhash"s*value="(.*?)"s*/>/i', $contents, $ matches); $matches)) {
$formhash = $matches[1];
} else {
die('Forumhash nicht gefunden.'); data, get COOKIE 
$cookie_file = dirname(__FILE__) ;                      => Curl_Setopt ($ ch, curlopt_header, 0); ($ ch, curlopt_returntransfer, 1);
C url_setopt ($ ch, curlopt_post, 1);
Curl_Setopt ($ ch, curlopt_postfields, $ post_fields);
CURL_SETOPT ($ ch, curlopt_cookiejar, $ cookie_file) ;
Curl_exec ( $ ch); Curl_Close ($ ch);
🎜>//Verwenden Sie das oben erhaltene COOKIE, um den Inhalt der Seite zu erhalten, für deren Anzeige Sie angemeldet sein müssen $ch = curl_init($get_url);
curl_setopt($ch, CURLOPT_HEADER, 0); ch, CURLOPT_RETURNTRANSFER, 0);
$contents = curl_exec ($ch); $contents);
?>


Das Obige stellt mehrere Beispiele für PHP-Curl vor, einschließlich inhaltlicher Aspekte. Ich hoffe, dass es für Freunde hilfreich sein wird, die sich für PHP-Tutorials interessieren.


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
Vorheriger Artikel:Nginx-LeistungsoptimierungNächster Artikel:Nginx-Leistungsoptimierung