Fichier PHP lisant fread, fgets, fgetc, file_get_contents et exemple de code d'utilisation de la fonction de fichier

怪我咯
Libérer: 2023-03-13 13:38:02
original
2108 Les gens l'ont consulté

Les fonctions

fread(), fgets(), fgetc(), file_get_contents() et file() sont utilisées pour lire le contenu des fichiers.

fread()

la fonction fread() est utilisée pour lire des fichiers (sans danger pour les fichiers binaires).

Syntaxe :

string fread( int handle, int length )
Copier après la connexion

fread() lit jusqu'à la longueur des octets à partir du handle du pointeur de fichier. La lecture du fichier s'arrêtera lorsque l'une des situations suivantes est rencontrée :

  • Lorsque jusqu'à la longueur des octets ont été lus

  • Fin du fichier (EOF) atteint

  • (pour les flux réseau) lorsqu'un paquet est disponible

  • ou (lors de l'ouverture d'un flux en espace utilisateur Après) 8192 octets ont été lu

Lecture de 10 octets (espaces compris) du fichier :

<?php
$filename = "data.txt";
$fh = fopen($filename, "r");
echo fread($fh, "10");
fclose($fh);
?>
Copier après la connexion

Invite

Si vous souhaitez simplement lire le contenu de un fichier dans une chaîne, vous devez utiliser file_get_contents() avec de meilleures performances. La fonction

fgets()

fgets() est utilisée pour lire une ligne de données à partir d'un fichier et pointer le pointeur du fichier vers la ligne suivante.

Astuce : Si vous souhaitez supprimer les balises HTML du fichier lors de la lecture, veuillez utiliser la fonction fgetss().

Syntaxe :

string fgets( int handle [, int length] )
Copier après la connexion

fgets() Lit une ligne du fichier pointé par handle et renvoie une chaîne d'une longueur maximale de 1 octet. S'arrête sur un caractère de nouvelle ligne (inclus dans la valeur de retour), EOF ou après la lecture d'octets de longueur 1. Si la longueur n'est pas spécifiée, la valeur par défaut est 1 Ko, soit 1 024 octets.

Exemple :

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

Explication supplémentaire

La fonction feof() teste si le pointeur de fichier atteint la fin du fichier. Le pointeur de fichier doit être valide. est une ressource invalide, elle tombera dans une boucle infinie. Voir "Fonction de pointeur de fichier PHP"

fgetc()

la fonction fgetc() est utilisée pour lire les données du fichier mot par mot jusqu'à la fin du fichier.

语法:

string fgetc( resource handle )
Copier après la connexion

例子:

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

file_get_contents()

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

语法:

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

例子:

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

file()

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

语法:

array file( string filename )
Copier après la connexion

例子:

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

test.txt 文件内容:

你好!
这是第二行文字。
Copier après la connexion

浏览器显示:

Line #0 : 你好! 
Line #1 : 这是第二行文字。
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal