Heim >Backend-Entwicklung >PHP-Tutorial >Einführung in PHP-Funktionen – fgets(): Liest eine Zeile aus einer Datei
PHP-Funktionseinführung – fgets(): Eine Zeile aus einer Datei lesen
In PHP ist das Lesen einer Datei ein sehr häufiger Vorgang. Die Funktion fgets() kann uns helfen, Daten Zeile für Zeile aus der Datei zu lesen. Diese Funktion ist besonders dann sehr nützlich, wenn wir große Textdateien verarbeiten müssen. In diesem Artikel wird die Verwendung der Funktion fgets() vorgestellt und einige Codebeispiele bereitgestellt, um den Lesern ein besseres Verständnis der Funktion und Verwendung dieser Funktion zu erleichtern. Die grundlegende Syntax der Funktion
fgets() lautet wie folgt:
string fgets (Ressource $handle, int $length);
Parameteranalyse:
Beispielcode 1: Grundlegende Verwendung
Angenommen, wir haben eine Textdatei example.txt mit folgendem Inhalt:
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Wir möchten jede Zeile darin lesen und auf der Seite anzeigen. Der Code lautet wie folgt:
$handle = fopen("example.txt", "r"); if ($handle) { while (($line = fgets($handle)) !== false) { echo $line . "<br>"; } fclose($handle); } else { echo "无法打开文件"; }
Das Programm verwendet zunächst die Funktion fopen(), um die Datei example.txt zu öffnen und speichert die zurückgegebene Dateiressource in der Variablen $handle. Verwenden Sie dann in einer While-Schleife die Funktion fgets(), um jeweils eine Zeile zu lesen, sie der Variablen $line zuzuweisen und sie dann auf der Seite auszugeben. Verwenden Sie abschließend die Funktion fclose(), um die Datei zu schließen.
Führen Sie den obigen Code aus. Die Ausgabe lautet wie folgt:
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Beispielcode 2: Begrenzen Sie die Anzahl der gelesenen Bytes
In einigen Fällen müssen wir möglicherweise nur die ersten paar Bytes in der Datei lesen oder einfach Get a lesen feste Anzahl von Bytes pro Zeile. Mit dem zweiten Parameter $length der Funktion fgets() können wir die Anzahl der gelesenen Bytes begrenzen. Beispielsweise lesen wir nur die ersten 10 Bytes jeder Zeile und der Code lautet wie folgt:
$handle = fopen("example.txt", "r"); if ($handle) { while (($line = fgets($handle, 10)) !== false) { echo $line . "<br>"; } fclose($handle); } else { echo "无法打开文件"; }
Dieser Code fügt dem Funktionsaufruf fgets() einen zweiten Parameter von 10 hinzu, was bedeutet, dass jedes Mal nur 10 Bytes gelesen werden . Die Ausführungsergebnisse sind wie folgt:
Lorem ipsu consectetu sed do eiu ut labore
Beispielcode 3: Daten Zeile für Zeile lesen und verarbeiten
Zusätzlich zur direkten Ausgabe auf der Seite können wir die Daten jeder Zeile auch weiter verarbeiten. Um beispielsweise die Anzahl der Zeichen in jeder Zeile der Datei zu zählen und das Ergebnis in einem Array zu speichern, lautet der Code wie folgt:
$handle = fopen("example.txt", "r"); $result = []; if ($handle) { while (($line = fgets($handle)) !== false) { $lineLength = strlen($line); $result[] = $lineLength; } fclose($handle); } else { echo "无法打开文件"; } print_r($result);
Dieser Code verwendet die Funktion strlen(), um die Anzahl der Zeichen in jeder Zeile zu zählen führt jede Schleife durch und speichert das Ergebnis im Array $result. Verwenden Sie abschließend die Funktion print_r(), um den Inhalt des Arrays auszugeben. Die Ausführungsergebnisse sind wie folgt: Die Funktion
Array ( [0] => 28 [1] => 28 [2] => 30 [3] => 24 )
Summary
fgets() ist eine sehr nützliche Funktion, die uns dabei helfen kann, Daten Zeile für Zeile aus der Datei zu lesen. Es ist sehr einfach zu bedienen und die grundlegende Syntax ist leicht zu verstehen. Wir können diese Funktion verwenden, um jede Zeile der Datei zu lesen und eine weitere Verarbeitung durchzuführen, z. B. sie auf der Seite auszugeben, die Anzahl der Zeichen zu zählen usw. Durch die Beherrschung und flexible Verwendung der Funktion fgets() können wir große Textdateien bequemer verarbeiten.
Das obige ist der detaillierte Inhalt vonEinführung in PHP-Funktionen – fgets(): Liest eine Zeile aus einer Datei. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!