Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Datei zum Lesen von fread, fgets, fgetc, file_get_contents und Beispielcode für die Verwendung von Dateifunktionen

PHP-Datei zum Lesen von fread, fgets, fgetc, file_get_contents und Beispielcode für die Verwendung von Dateifunktionen

怪我咯
怪我咯Original
2017-07-11 09:46:032093Durchsuche

Die Funktionen

fread(), fgets(), fgetc(), file_get_contents() und file() werden zum Lesen von Inhalten aus Dateien verwendet.

fread()

Die Funktion fread() wird zum Lesen von Dateien verwendet (sicher für Binärdateien).

Syntax:

string fread( int handle, int length )

fread() liest bis zur Länge Bytes aus dem Dateizeiger-Handle. Das Lesen der Datei wird beendet, wenn eine der folgenden Situationen auftritt:

  • Wenn bis zur Länge Bytes gelesen wurden

  • Ende der Datei (EOF) erreicht

  • (für Netzwerk-Streams), wenn ein Paket verfügbar ist

  • oder (beim Öffnen eines Userspace-Streams danach) 8192 Bytes hat wurde gelesen

10 Bytes (einschließlich Leerzeichen) aus der Datei lesen:

<?php
$filename = "data.txt";
$fh = fopen($filename, "r");
echo fread($fh, "10");
fclose($fh);
?>

Eingabeaufforderung

Wenn Sie nur den Inhalt von lesen möchten Um eine Datei in einen String zu konvertieren, sollten Sie file_get_contents() mit besserer Leistung verwenden.

fgets()

Die Funktion fgets() wird verwendet, um eine Datenzeile aus einer Datei zu lesen und den Dateizeiger auf die nächste Zeile zu verweisen.

Tipp: Wenn Sie beim Lesen die HTML-Tags in der Datei entfernen möchten, verwenden Sie bitte die Funktion fgetss().

Syntax:

string fgets( int handle [, int length] )

fgets() Liest eine Zeile aus der Datei, auf die das Handle zeigt, und gibt einen String mit einer Länge von höchstens 1 Byte zurück. Stoppt bei einem Zeilenumbruchzeichen (im Rückgabewert enthalten), EOF oder nachdem Bytes der Länge 1 gelesen wurden. Wenn die Länge nicht angegeben ist, beträgt sie standardmäßig 1 KB oder 1024 Byte.

Beispiel:

<?php
$fh = @fopen("data.txt","r") or die("打开 data.txt 文件出错!");
// if条件避免无效指针
if($fh){
    while(!feof($fh)) {
        echo fgets($fh), &#39;<br />';
    }
}
fclose($fh);
?>

Zusätzliche Erklärung

Die Funktion feof() testet, ob der Dateizeiger das Ende der Datei erreicht Ist eine ungültige Ressource, gerät sie in eine Endlosschleife. Siehe „PHP-Dateizeigerfunktion“

fgetc()

Die Funktion fgetc() wird verwendet, um Dateidaten Wort für Wort zu lesen bis zum Ende der Datei.

语法:

string fgetc( resource handle )

例子:

<?php
$fh = @fopen("data.txt","r") or die("打开 data.txt 文件出错!");
if($fh){
    while(!feof($fh)) {
        echo fgetc($fh);
    }
}
fclose($fh);
?>

file_get_contents()

file_get_contents() 函数用于把 整个文件 读入一个字符串,成功返回一个字符串,失败则返回 FALSE。

语法:

string file_get_contents( string filename [, int offset [, int maxlen]] )
参数说明:
参数 说明
filename 要读取的文件名称
offset 可选,指定读取开始的位置,默认为文件开始位置
maxlen 可选,指定读取文件的长度,单位字节

例子:

<?php
// 读取时同事将换行符转换成 <br />
echo nl2br(file_get_contents('data.txt'));
?>

file()

file() 函数用于把 整个文件 读入一个数组中,数组中的每个单元都是文件中相应的一行,包括换行符在内。成功返回一个数组,失败则返回 FALSE。

语法:

array file( string filename )

例子:

<?php
$lines = file(&#39;data.txt&#39;);
// 在数组中循环并加上行号
foreach ($lines as $line_num => $line) {
    echo "Line #{$line_num} : ",$line,'<br />';
}
?>

test.txt 文件内容:

你好!
这是第二行文字。

浏览器显示:

Line #0 : 你好! 
Line #1 : 这是第二行文字。

Das obige ist der detaillierte Inhalt vonPHP-Datei zum Lesen von fread, fgets, fgetc, file_get_contents und Beispielcode für die Verwendung von Dateifunktionen. 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