Heim Backend-Entwicklung PHP-Tutorial Der Unterschied zwischen Curl, Fopen und File_get_contents

Der Unterschied zwischen Curl, Fopen und File_get_contents

Jul 29, 2016 am 09:15 AM
curl file fopen get

curl wird hauptsächlich zum Crawlen von Internet-Webseiten verwendet, fopen wird hauptsächlich zum Lesen von Dateien verwendet und file_get_contents wird hauptsächlich zum Abrufen des Inhalts statischer Seiten verwendet.

1. fopen /file_get_contents Jede Anfrage wird erneut durchgeführtDNSAbfrage, was nicht korrekt ist DNS Informationen werden zwischengespeichert. CURL speichert jedoch automatisch DNS-Informationen zwischen. Für Anfragen nach Webseiten oder Bildern unter demselben Domainnamen ist nur eine DNS-Abfrage erforderlich. Dadurch wird die Anzahl der DNS-Abfragen erheblich reduziert. CURL hat also eine bessere Leistung als fopen /file_get_contents ist viel besser.

2. fopen /file_get_contentsanfordernHTTP Wann mit http_fopen_wrapper, nicht mit keeplive. Aber Curl schon. Auf diese Weise ist curl effizienter, wenn mehrere Links mehrmals angefordert werden.

3. Curl kann eine Vielzahl von Anfragen simulieren, wie z. B. POST-Daten, Formularübermittlung usw. Benutzer können Anfragen entsprechend ihren eigenen Bedürfnissen anpassen. Und fopen/file_get_contents kann nur die get-Methode zum Abrufen von Daten verwenden.


Nachdem ich studiert habe, habe ich herausgefunden, dass Curl viele Protokolle unterstützt, darunter FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE und LDAP viel file_get_content Etwas, das nicht getan werden kann. Curl kann die Remote-Erfassung und -Sammlung der PHP-Webversion implementieren; das Implementieren von Schnittstellen-Docking (API), das Implementieren von simulierten Cookies zum Herunterladen von Dateien usw Funktion ist sehr mächtig.

Nachdem ich einige grundlegende Anwendungen von Curl verstanden hatte, stellte ich fest, dass es nicht schwierig ist, sich einige der Einstellungsparameter zu merken, aber wir können uns nur an einige häufig verwendete erinnern.

Curl aktivieren:

Da PHP die Curl-Funktion standardmäßig nicht unterstützt, müssen Sie diese Funktion zunächst in php.ini aktivieren, d. h. entfernen, wenn Sie Curl verwenden möchten. extension= php_curl. Das Semikolon vor der DLL, dann speichern und Apache/iis neu starten.

<precourier new border-width:1px border-style:solid border-color:rgb rgb background-color:rgb padding:5px><span><?</span><span>php</span><span>  $curl </span><span>=</span><span> curl_init</span><span>();</span><span>//初始化一个cURL对象</span><span>  $url </span><span>=</span><span></span><span>"http://cart.jd.com/cart/cart.html?backurl=http://item.jd.com/176166.html&rid=0.9533184533      938766"</span><span>;</span><span>  $header </span><span>=</span><span> array</span><span>();</span><span>  $header</span><span>[]</span><span></span><span>=</span><span></span><span>'User-Agent: 5.0 (iPhone; U; CPU iPhone OS 4_3 like Mac OS X; en-us)'</span><span>;</span><span>  $header</span><span>[]</span><span></span><span>=</span><span></span><span>'Accept: text/html,application/xhtml&#43;xml,application/xml;q=0.9,*/*;q=0.8'</span><span>;</span><span>  $header</span><span>[]=</span><span></span><span>'Accept-Encoding: gzip,deflate'</span><span>;</span><span>  $header</span><span>[]=</span><span></span><span>'//可以根据需要增加header内容'</span><span>;</span><span>  curl_setopt</span><span>(</span><span>$culr</span><span>,</span><span>CURLOPT_URL</span><span>,</span><span> $url</span><span>);</span><span>//设置你需要抓去的URL地址</span><span>  curl_setopt</span><span>(</span><span>$curl</span><span>,</span><span>CURLOPT_HEADER</span><span>,</span><span>$header </span><span>);</span><span>//设置header</span><span>  curl_setopt</span><span>(</span><span>$curl</span><span>,</span><span>CURLOPT_RETURNTRANSFER</span><span>,</span><span>1</span><span>);</span><span>//将结果返回输出到字符串</span><span>  $str </span><span>=</span><span> curl_exec</span><span>(</span><span>$curl</span><span>);运行</span><span>cURL</span><span>,请求网页</span><span>  curl_close</span><span>(</span><span>$curl</span><span>);</span><span>//关闭url请求</span><span></span><span>return</span><span> $str</span><span>;</span><span>//返回或者显示结果</span><span>?></span></precourier>
Nach dem Login kopieren


Das Obige hat die Unterschiede zwischen Curl, Fopen und File_Get_Contents vorgestellt, einschließlich der relevanten Aspekte. Ich hoffe, dass es für Freunde hilfreich sein wird, die sich für PHP-Tutorials interessieren.

Erklärung dieser Website
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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So realisieren Sie die gegenseitige Konvertierung zwischen CURL- und Python-Anfragen in Python So realisieren Sie die gegenseitige Konvertierung zwischen CURL- und Python-Anfragen in Python May 03, 2023 pm 12:49 PM

Sowohl Curl als auch Pythonrequests sind leistungsstarke Tools zum Senden von HTTP-Anfragen. Während Curl ein Befehlszeilentool ist, mit dem Sie Anfragen direkt vom Terminal aus senden können, bietet die Requests-Bibliothek von Python eine eher programmatische Möglichkeit, Anfragen aus Python-Code zu senden. Die grundlegende Syntax zum Konvertieren des Curl-Befehls in den Pythonrequestscurl-Befehl lautet wie folgt: curl[OPTIONS]URL Beim Konvertieren des Curl-Befehls in eine Python-Anfrage müssen wir die Optionen und die URL in Python-Code konvertieren. Hier ist ein Beispiel für einen CurlPOST-Befehl: curl-XPOST https://example.com/api

Tutorial zum Aktualisieren der Curl-Version unter Linux! Tutorial zum Aktualisieren der Curl-Version unter Linux! Mar 07, 2024 am 08:30 AM

Um die Curl-Version unter Linux zu aktualisieren, können Sie die folgenden Schritte ausführen: Überprüfen Sie die aktuelle Curl-Version: Zunächst müssen Sie die im aktuellen System installierte Curl-Version ermitteln. Öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus: curl --version Dieser Befehl zeigt die aktuellen Informationen zur Curl-Version an. Verfügbare Curl-Version bestätigen: Bevor Sie Curl aktualisieren, müssen Sie die neueste verfügbare Version bestätigen. Sie können die offizielle Website von Curl (curl.haxx.se) oder verwandte Softwarequellen besuchen, um die neueste Version von Curl zu finden. Laden Sie den Curl-Quellcode herunter: Laden Sie mit Curl oder einem Browser die Quellcodedatei für die Curl-Version Ihrer Wahl herunter (normalerweise .tar.gz oder .tar.bz2).

Hongmeng native Anwendung zufälliger Poesie Hongmeng native Anwendung zufälliger Poesie Feb 19, 2024 pm 01:36 PM

Um mehr über Open Source zu erfahren, besuchen Sie bitte: 51CTO Hongmeng Developer Community https://ost.51cto.com Laufumgebung DAYU200:4.0.10.16SDK: 4.0.10.15IDE: 4.0.600 1. Um eine Anwendung zu erstellen, klicken Sie auf Datei- >newFile->CreateProgect. Vorlage auswählen: [OpenHarmony] EmptyAbility: Geben Sie den Projektnamen, shici, den Namen des Anwendungspakets com.nut.shici und den Speicherort der Anwendung XXX ein (kein Chinesisch, Sonderzeichen oder Leerzeichen). CompileSDK10, Modell: Stage. Gerät

Verwenden Sie die Funktion File.length() von Java, um die Größe der Datei zu ermitteln Verwenden Sie die Funktion File.length() von Java, um die Größe der Datei zu ermitteln Jul 24, 2023 am 08:36 AM

Verwenden Sie die File.length()-Funktion von Java, um die Größe einer Datei zu ermitteln. Die Dateigröße ist eine sehr häufige Anforderung beim Umgang mit Dateioperationen. Java bietet eine sehr praktische Möglichkeit, die Größe einer Datei zu ermitteln, d. h. mithilfe der Länge(. )-Methode der File-Klasse. In diesem Artikel wird erläutert, wie Sie mit dieser Methode die Größe einer Datei ermitteln und entsprechende Codebeispiele angeben. Zuerst müssen wir ein File-Objekt erstellen, um die Datei darzustellen, deren Größe wir ermitteln möchten. So erstellen Sie ein File-Objekt: Filef

PHP8.1 veröffentlicht: Einführung von Curl für die gleichzeitige Verarbeitung mehrerer Anfragen PHP8.1 veröffentlicht: Einführung von Curl für die gleichzeitige Verarbeitung mehrerer Anfragen Jul 08, 2023 pm 09:13 PM

PHP8.1 veröffentlicht: Einführung von Curl für die gleichzeitige Verarbeitung mehrerer Anfragen Vor kurzem hat PHP offiziell die neueste Version von PHP8.1 veröffentlicht, die eine wichtige Funktion eingeführt hat: Curl für die gleichzeitige Verarbeitung mehrerer Anfragen. Diese neue Funktion bietet Entwicklern eine effizientere und flexiblere Möglichkeit, mehrere HTTP-Anfragen zu verarbeiten und verbessert so die Leistung und das Benutzererlebnis erheblich. In früheren Versionen erforderte die Bearbeitung mehrerer Anfragen häufig die Erstellung mehrerer Curl-Ressourcen und die Verwendung von Schleifen zum Senden bzw. Empfangen von Daten. Obwohl diese Methode den Zweck erreichen kann

So konvertieren Sie einen PHP-Blob in eine Datei So konvertieren Sie einen PHP-Blob in eine Datei Mar 16, 2023 am 10:47 AM

So konvertieren Sie einen PHP-Blob in eine Datei: 1. Erstellen Sie eine PHP-Beispieldatei; 2. Über „function blobToFile(blob) {return new File([blob], 'screenshot.png', { type: 'image/jpeg' }) } ”-Methode kann zum Konvertieren von Blob in eine Datei verwendet werden.

So lösen Sie die PHP-Warnung: fopen(): Fehler beim Öffnen des Streams: Keine solche Datei oder kein solches Verzeichnis So lösen Sie die PHP-Warnung: fopen(): Fehler beim Öffnen des Streams: Keine solche Datei oder kein solches Verzeichnis Aug 19, 2023 am 10:44 AM

So lösen Sie PHPWarning:fopen():failedtoopenstream:Nosuchfileordirectory Bei der Verwendung von PHP-Entwicklung stoßen wir häufig auf einige Dateibetriebsprobleme, darunter „PHPWarning:fopen():failedtoopenstream:Nosuchfileordirectory“.

Benennen Sie Dateien mit der Java-Funktion File.renameTo() um Benennen Sie Dateien mit der Java-Funktion File.renameTo() um Jul 25, 2023 pm 03:45 PM

Verwenden Sie die Funktion File.renameTo() von Java, um Dateien umzubenennen. In der Java-Programmierung müssen wir häufig Dateien umbenennen. Java stellt die File-Klasse für die Verarbeitung von Dateioperationen bereit, und die Funktion renameTo() kann Dateien problemlos umbenennen. In diesem Artikel wird die Verwendung der Java-Funktion File.renameTo() zum Umbenennen von Dateien vorgestellt und entsprechende Codebeispiele bereitgestellt. Die Funktion File.renameTo() ist eine Methode der File-Klasse.

See all articles