In PHP sind die Operationen zum Lesen von Dateien sehr häufige Aufgaben, und die Funktion fGets () bietet die Funktion des Lesedatenzeilens für Zeile aus einer Datei. Diese Funktion eignet sich besonders zum Umgang mit großen Textdateien und kann jede Datenzeile effektiv lesen. In diesem Artikel wird detailliert eingeführt, wie die Funktion fGets () verwendet wird und praktische Codebeispiele bereitgestellt werden, um den Lesern zu helfen, diese Funktion zu verbessern.
Die grundlegende Syntax der Funktion fGets () lautet wie folgt:
string fgets ( resource $handle, int $length );
Unter ihnen werden die Parameter wie folgt erklärt:
Nehmen wir an, wir haben eine Textdatei namens Beispiel.txt mit dem folgenden Inhalt:
Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incididunt
ut labore et dolore magna aliqua.
Wir können den folgenden Code verwenden, um die Dateiinhaltszeile nach Zeile und Ausgabe zu lesen:
$handle = fopen("example.txt", "r");
if ($handle) {
while (($line = fgets($handle)) !== false) {
echo $line . "<br>";
}
fclose($handle);
} else {
echo "Die Datei kann nicht geöffnet werden";
}
In diesem Code wird zuerst die Funktion fopen () verwendet, um die Datei für Beispiele.txt zu öffnen und die zurückgegebenen Dateiressourcen in der Variablen $ -Handle zu speichern. Verwenden Sie dann in einer Weile Schleife mit der Funktion fGets () , um die Dateiinhaltszeile nach Zeile zu lesen und jede Datenzeile auf der Seite auszugeben. Schließlich schließen Sie die Datei mit der Funktion fcLose () .
Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incididunt
ut labore et dolore magna aliqua.
In einigen Fällen kann es erforderlich sein, nur einen Teil jeder Zeile zu lesen. Das zweite Argument der FGGETS () -Funktion $ $ Länge ermöglicht es uns, die Anzahl der gemeldeten Bytes zu begrenzen. Der folgende Beispielcode zeigt, wie die ersten 10 Bytes jeder Zeile gelesen werden:
$handle = fopen("example.txt", "r");
if ($handle) {
while (($line = fgets($handle, 10)) !== false) {
echo $line . "<br>";
}
fclose($handle);
} else {
echo "Die Datei kann nicht geöffnet werden";
}
Dieser Code gibt den zweiten Parameter 10 in der Funktion fGets () an und zeigt an, dass 10 Bytes gleichzeitig gelesen werden. Die Ergebnisse nach der Ausführung sind wie folgt:
Lorem ipsu
consectetu
sed do
ut labore
Zusätzlich zur direkten Ausgabe des Dateiinhalts können wir die Daten beim Lesen jeder Zeile weiter verarbeiten. Zum Beispiel können wir die Anzahl der Zeichen für jede Zeile in einer Datei zählen und das Ergebnis in einem Array speichern. Hier ist ein Code -Beispiel, das diese Funktion implementiert:
$handle = fopen("example.txt", "r");
$result = [];
if ($handle) {
while (($line = fgets($handle)) !== false) {
$lineLength = strlen($line);
$result[] = $lineLength;
}
fclose($handle);
} else {
echo "Die Datei kann nicht geöffnet werden";
}
print_r($result);
In diesem Beispiel verwenden wir die Funktion strlen (), um die Anzahl der Zeichen pro Zeile zu berechnen und im $ -Rex -Array zu speichern. Endgültiger Ausgangsarray -Inhalt:
Array
(
[0] => 28
[1] => 28
[2] => 30
[3] => 24
)
Die Funktion fGets () ist eine sehr nützliche Dateiverarbeitungsfunktion in PHP, die uns helfen kann, die Datenzeile für Zeile aus einer Datei zu lesen. Indem wir diese Funktion flexibel verwenden, können wir große Textdateien problemlos verarbeiten und den Dateiinhalt gemäß den tatsächlichen Anforderungen arbeiten und verarbeiten. Durch die Beherrschung der Verwendung von FGets () wird die Leseroperationen von Dateien effizienter und bequemer.