Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Lesedatei

PHP-Lesedatei

WBOY
WBOYOriginal
2024-08-29 13:02:30318Durchsuche

PHP-Readfile ist im Grunde eine integrierte Funktion in der PHP-Bibliothek, die zum Lesen einer Datei und zum anschließenden Schreiben in einen Ausgabepuffer verwendet wird.

Starten Sie Ihren kostenlosen Softwareentwicklungskurs

Webentwicklung, Programmiersprachen, Softwaretests und andere

Syntax:

readfile ( string $file_name [, boolean $path = FALSE [, resource $context ]] ) : int

Die in der Syntax verwendeten Parameter:

  • Dateiname: Es handelt sich um ein Pflichtfeld, in dem wir den Namen der zu lesenden Datei angeben.
  • Pfad: Dies ist ein optionaler Parameter und ein boolescher Wert, der entweder auf „true“ oder „false“ gesetzt werden kann, wenn die Datei im angegebenen Pfad durchsucht werden muss.
  • context: Dies ist auch ein optionales Feld, das verwendet wird, um den Kontext des Dateihandles anzugeben. Grundsätzlich ist ein Kontext eine Sammlung von Objekten, die das Verhalten dieses Streams ändern können. Es gibt die Anzahl der Bytes zurück, die bei Erfolg aus der Datei gelesen wurden, und gibt „false“ zurück, wenn das Lesen fehlschlägt.

Methoden der PHP-Lesedatei

Neben der Funktion readfile() sind unten einige der anderen Funktionen aufgeführt, die zum Ausführen verschiedener Arten von Vorgängen an den Dateien verwendet werden können.

1. file()

Diese Funktion wird auch zum Lesen einer Datei verwendet und liest die gesamte Datei in ein Array.

Syntax:

file ( string $file_name [, int $flag = 0 [, resource $context ]] ) : array

wobei Dateiname der Pfad zur zu lesenden Datei ist. Flags sind optionale Felder, die aus den folgenden Konstanten ausgewählt werden können:

  • FILE_USE_INCLUDE_PATH: Um nach der entsprechenden Datei im angegebenen Pfad zu suchen.
  • FILE_IGNORE_NEW_LINES: Um eine neue Zeile am letzten jedes Array-Elements wegzulassen.
  • FILE_SKIP_EMPTY_LINES: Um leere Zeilen zu überspringen.

Bei Erfolg wird die im Array vorhandene Datei zurückgegeben, bei Fehler wird false zurückgegeben.

2. fopen()

Mit dieser Funktion können sowohl eine Datei als auch eine URL geöffnet werden.

fopen ( string $file_name , string $mode [, bool $use_include_path = FALSE [, resource $context ]] ) : resource
  • wobei, wenn file_name eine URL ist, PHP einen Protokollhandler (auch als Wrapper bezeichnet) danach durchsucht. Das PHP gibt einen Hinweis aus, um mögliche Probleme im Skript zu verfolgen und es dann weiterhin als normalen regulären Dateinamen zu betrachten.
  • Angenommen, der Dateiname ist eine lokale Datei, dann versucht PHP, denselben Stream für diese Datei zu öffnen. Auf die Datei kann PHP nur dann zugreifen, wenn die erforderlichen Berechtigungen für den Zugriff erteilt werden.
  • Angenommen, der angegebene Dateiname ist ein registriertes Protokoll und wenn dieses als Netzwerk-URL registriert ist, stellt das erste PHP sicher, dass „allow_url_fopen“ aktiviert ist. Es wird eine Warnung ausgegeben und schlägt fehl, wenn es deaktiviert ist.

Modus: Dieser Parameter gibt die Art des Zugriffs an, der für den Stream erforderlich ist.‘  Nachfolgend sind einige wichtige Modi aufgeführt:

  • r – nur Lesemodus
  • r+ – sowohl Lese- als auch Schreibzugriff
  • w – nur Schreibmodus

Im Erfolgsfall wird eine Dateizeigerressource zurückgegeben, im Fehlerfall wird der Wert false zurückgegeben.

3. fread()

Diese Funktion wird zum binärsicheren Lesen von Dateien verwendet.

Syntax:

fread ( resource $handle , int $length ) : string

wobei das Handle zum Referenzieren des Dateizeigers verwendet wird.

Die Datei wird gelesen, bis eine der folgenden Bedingungen erreicht ist: Länge in Bytes muss gelesen worden sein, EOF ist erreicht, Socket-Timeout tritt auf. fgets(), fscanf(), ftell(), fwrite(), fopen(), fsockopen() sind einige andere Funktionen, die für Dateioperationen in PHP verwendet werden.

Beispiele für PHP-Lesedateien

Im Folgenden finden Sie Beispiele für PHP-Lesedateien:

Beispiel #1

Code:

<?php
// it is writing content of file to output
// buffer used in readfile() function
echo readfile("file.txt");
?>

Ausgabe:

PHP-Lesedatei

Dies zeigt ein einfaches Beispiel zum Lesen einer im lokalen Pfad vorhandenen Datei. Stellen Sie sicher, dass der im Parameter der Funktion readfile() angegebene Dateiname erstellt wird und der zu lesende Inhalt in der Datei vorhanden ist. Wenn die Funktion readfile() verwendet wird, liest sie den Inhalt der Datei und gibt sie in der Ausgabe aus.

Beispiel #2

Code:

<?php
/ file contents written on output
// buffer by readfile() function
$file = @readfile("file.txt");
if (!$file)
{
print "File could not be opened";
}
?>

Ausgabe:

PHP-Lesedatei

Die vorherige Ausgabe war ein einfaches Beispiel ohne Bedingungen. In diesem Beispiel sehen wir uns an, wie die Ausgabe einer Datei unter Verwendung bestimmter Bedingungen gelesen und angezeigt wird. Wir verwenden die if-Anweisung zum Drucken, vorausgesetzt, die Datei ist nicht vorhanden.

Beispiel #3

Code:

<?php
$file_name = "file.txt";
$fh = fopen($file_name, 'r');
$data = fread($fh, filesize($file_name));
fclose($fh);
echo $data;
?>

Ausgabe:

PHP-Lesedatei

In this example, we are combining the use of multiple file read functions. As in all the above examples, first, we are giving the file name which needs to be read from. Then the mode of operation, ‘r’ is given to them indicating it can only be read. filesize() function takes the filename and returns the size of the file along with its data and assigns it to $data variable. By using fclose() function we are closing that file. Finally, the data is printed as output.

Example #4

Code:

<?php
$file_name = "file.txt";
$file = fopen( $file_name , "r" );
if( $file == false ) {
echo ( "Error in opening file" );
exit();
}
$size = filesize( $file_name );
$filetext = fread( $file, $size);
fclose( $file );
echo ( "The size of input file in bytes is : $size\n" );
echo ("Printing details of file:\n");
echo ( $filetext );
?>

Output:

PHP-Lesedatei

Before running the code, make sure that the file to be read file.txt is created in the local file path. In this example first, we are declaring the file name to be read and opening that with the function fopen(). Suppose the file does not exist, using if condition we are throwing an error message. Finally, we are printing the file size and the content present in the input file.

Conclusion

As seen from all the above examples, readfile() is one of the main functions of PHP used for reading the file name specified in this function. Apart from readfile() we have covered a few other file operations which perform similar actions such as fopen, file, fread, fgets, fgetss, ftell, etc. A combination of all of these are basically used in accessing and performing operations on the input file.

Das obige ist der detaillierte Inhalt vonPHP-Lesedatei. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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:PHP-DateifunktionenNächster Artikel:PHP-Dateifunktionen