PHP -Datei_Get_Contents Funktion

PHP -Datei_Get_Contents Funktion
PHP enthält viele integrierte Funktionen, um den Inhalt einer vorhandenen nicht leeren Datei zu lesen. Die Datei_get_Contents () ist eine der integrierten Funktionen von PHP, um den gesamten Inhalt einer vorhandenen Datei als Zeichenfolge zu lesen. Die Syntax dieser Funktion ist unten angegeben.

Syntax:

Diese Funktion kann fünf Argumente erfordern. Es gibt den gesamten oder bestimmten Inhalt einer Datei zurück, wenn die Datei ansonsten vorhanden ist.

String | False File_Get_Contents (String $ Dateiname [, bool $ use_include_path = false [, Ressource $ context [, int $ offset = 0 [, int $ maxlen]]]]]))
  • Das erste Argument ist obligatorisch und nimmt den Dateinamen an, der von dieser Funktion gelesen wird.
  • Das zweite Argument ist optional und der Standardwert dieses Arguments ist falsch. Es wird der Wert dieses Arguments auf true gesetzt, dann wird die Datei in dem verwendeten Pfad durchsucht im Include_Path Wert der Php.Ini Datei.
  • Das dritte Argument ist optional, mit dem die gültige Kontextressource oder NULL angegeben werden.
  • Das vierte Argument ist optional, mit dem die Startposition zum Lesen des Dateiinhalts festgelegt wird.
  • Das fünfte Argument ist optional, mit dem die maximale Datenlänge festgelegt werden, die aus der Datei gelesen werden.

Verschiedene Verwendungen der Funktion "File_Get_Contents ())

Erstellen oder wählen Sie eine vorhandene Datei für das Lesen mithilfe von Datei_get_Contents () -Funktionen. Hier eine Textdatei mit dem Namen Betriebssystem.txt wurde mit den folgenden Inhalten erstellt, die in den Beispielen dieses Tutorials verwendet werden sollen.

Betriebssystem.txt

Windows 11
Windows 10
Windows 8
Windows 7
Ubuntu 20.10
Ubuntu 20.04
Ubuntu 19
Ubuntu 18
Ubuntu 17
Macos Monterey 12.0.1
Os x el capitan 10.11.6
Mac OS X Puma 10.1.5

Beispiel 1: Lesen Sie die gesamte Datei

Erstellen Sie eine PHP -Datei mit dem folgenden Skript, um den Inhalt einer vorhandenen Datei zu lesen. Der Datei existiert() Die Funktion wurde verwendet, um die Datei vor dem Lesen zu überprüfen oder nicht. Der is_readable () Die Funktion wurde verwendet, um die lesende Berechtigung der Datei zu überprüfen. Wenn die Datei vorliegt und die Datei die LESER -Berechtigung hat, wird der Inhalt der Datei mithilfe der Datei gedruckt Datei_get_Contents () Funktion.

// Setzen Sie einen Dateinamen
$ Dateiname = 'OS.txt';
// Überprüfen Sie, ob die Datei existiert oder nicht
Wenn (!Datei_exists ($ Dateiname))
Echo 'Datei existiert nicht.';

// Überprüfen Sie, ob die Datei die LESER -Berechtigung hat oder nicht
sonst wenn ((!is_readable ($ Dateiname))
Die Echo -Datei hat keine Leseberechtigung.';

// Drucken Sie den gesamten Inhalt der Datei aus
anders
echo file_get_contents ($ Dateiname);
?>

Ausgang:

Die folgende Ausgabe wird angezeigt, in dem das obige Skript ausgeführt wird. Hier wurde die Newline weggelassen.

Beispiel 2: Lesen Sie die Datei teilweise durch

Erstellen Sie eine PHP -Datei mit dem folgenden Skript, um einen bestimmten Teil einer Datei zu lesen, anstatt den vollständigen Inhalt zu lesen, indem Sie die verwenden Datei_get_Contents () Funktion. Hier wird der Dateiname aus dem Parameter der URL -Abfrage entnommen. Als nächstes wird die Existenz- und Leseberechtigung der Datei überprüft. Der bestimmte Teil der Datei wird basierend auf der positiven Ausgangsposition, der Länge und der negativen Startposition und der Länge gelesen.

// Überprüfen Sie, ob der Dateiname im URL -Abfrageparameter angegeben ist oder nicht
if (isset ($ _ get ['fn']))

// Setzen Sie einen Dateinamen
$ Dateiname = $ _get ['fn'];
// Überprüfen Sie, ob die Datei existiert oder nicht
Wenn (!Datei_exists ($ Dateiname))
Echo 'Datei existiert nicht.';

// Überprüfen Sie, ob die Datei die LESER -Berechtigung hat oder nicht
sonst wenn ((!is_readable ($ Dateiname))
Die Echo -Datei hat keine Leseberechtigung.';

anders

// Drucken Sie den jeweiligen Teil der Datei basierend auf einer positiven Startposition
Echo "Ausgabe für die positive Ausgangsposition:
".Datei_get_Contents ($ Dateiname, Null, Null, 5, 30);
// Drucken Sie den jeweiligen Teil der Datei basierend auf der negativen Ausgangsposition
Echo "
Ausgabe für die negative Ausgangsposition:
".Datei_get_Contents ($ Dateiname, Null, Null, -24,
20);


anders
// Meldung drucken, wenn der Dateiname nicht gefunden wird
Echo "Dateiname hat nicht gegeben."
?>

Ausgang:

Die folgende Ausgabe wird angezeigt, in dem das obige Skript ausgeführt wird, ohne den Dateinamen in der URL zu geben.

Die folgende Ausgabe wird angezeigt, wenn der Dateiname das obige Skript ausführt, Betriebssystem.txt wird im URL -Parameter angegeben, der zuvor erstellt wurde.

Die folgende Ausgabe wird angezeigt, in dem das obige Skript ausgeführt wird, wenn keine Existenzdatei im URL-Parameter angegeben ist.

Beispiel-3: Lesen Sie die Datei mit dem Parameter cascled_path lesen

Der Wert der include_path Der Parameter muss in der festgelegt werden Php.Ini Datei. Der Pfad dieser Datei auf Ubuntu ist '/etc/php/8.0/Apache2/PHP.Ini '. Öffnen Sie die Datei und setzen Sie den Pfad der Datei, aus der die Datei gelesen wird. Das zweite Argument der Datei_get_Contents () ist erforderlich, um festzulegen WAHR oder Datei_USE_INCLUDE_PATH So lesen Sie die Datei aus dem in definierten Pfad in der include_path Parameter.

// Setzen Sie einen Dateinamen
$ Dateiname = 'Kunden.txt';
// Setzen Sie den zweiten Argumentwert auf true
Echo "Ausgabe-1:
".Datei_get_Contents ($ Dateiname, true);
// Setzen Sie den zweiten Argumentwert auf File_USE_INCLUDE_PATH
Echo "
Ausgabe-2:
".Datei_get_Contents ($ Dateiname, File_Use_include_path);
?>

Ausgang:

Die folgende Ausgabe wird angezeigt, in dem das obige Skript ausgeführt wird.

Beispiel-5: Lesen Sie den Inhalt einer URL mit Curl durch

Sie müssen die PHP -Curl -Bibliothek installieren, um den Inhalt einer URL -Adresse zu lesen. Führen Sie den folgenden Befehl aus, um das PHP -Curl -Modul zu installieren.

$ sudo apt installieren libapache2-mod-php-php-curl

Öffne das Php.Ini Datei und entfernen Sie das Semikolon (;) aus der Curl -Erweiterung, um es zu aktivieren.

Erstellen Sie eine PHP -Datei mit dem folgenden Skript, um den Inhalt einer URL URL. Wenn die URL -Adresse vorhanden ist, wird der Inhalt der URL -Adresse gedruckt.

// Überprüfen Sie, ob die URL -Adresse im URL -Abfrageparameter angegeben ist oder nicht
if (isset ($ _ GET ['url'])))

// Setzen Sie den URL -Wert
$ url = $ _get ['url'];
// Verwenden Sie die Curl -Bibliothek, um die Existenz der URL zu überprüfen
$ curl = curl_init ($ url);
curl_setopt ($ curl, curlopt_nobody, true);
if (curl_exec ($ curl) !== falsch)
// Lesen Sie die Seite der URL -Adresse
echo file_get_contents ($ url);
anders
Echo "URL existiert nicht.";

anders
Echo "URL -Wert hat nicht gegeben.";
?>

Ausgang:

Die folgende Ausgabe wird angezeigt, in dem das obige Skript ausgeführt wird, wenn keine URL -Adresse bereitgestellt wird.

Die folgende Ausgabe wird angezeigt, in dem das obige Skript ausgeführt wird, wenn die gültige URL -Adresse, 'https: // linuxhint.com/bash_comments/' wird gegeben.

Beispiel-6: Lesen Sie den Inhalt der URL mithilfe des Stream-Kontextes durch

Erstellen Sie eine PHP -Datei mit dem folgenden Skript, um den Inhalt einer gültigen URL. Hier haben die zweiten und dritten Argumente der Datei_get_Contents () den Inhalt von 'http: // www verwendet.Beispiel.com/'.

// Stream erstellen, um Inhalte der URL zu lesen
$ options = array (
'http' => Array (
'Methode' => "Get",
'Header' => "Akzeptierende Sprache: en \ r \ n"
)
);
// Setzen Sie den Kontextwert
$ context = stream_context_create ($ options);
// Lesen Sie den Inhalt der URL mit den HTTP -Headern
echo file_get_contents ('http: // www.Beispiel.com/', falsch, $ context);
?>

Ausgang:

Die folgende Ausgabe wird angezeigt, in dem das obige Skript ausgeführt wird.

Abschluss

Die verschiedenen Möglichkeiten, den Inhalt einer Datei von verschiedenen Standorten und URL -Adressen mithilfe von Datei_Get_Contents () aus zu lesen, haben in diesem Tutorial gezeigt. Ich hoffe, der PHP -Benutzer kann diese Funktion nach dem Lesen dieses Tutorials richtig verwenden.