Dans le développement de PHP, la lecture du contenu du fichier est une opération très courante, qu'il s'agisse de lire des fichiers texte locaux ou des ressources distantes. PHP fournit une variété de méthodes de lecture, parmi lesquelles les plus couramment utilisées sont File_get_Contents et Fread . Cet article présentera ces deux méthodes en détail et fournira des exemples de code pratiques pour vous aider à maîtriser rapidement les compétences en lecture de fichiers.
File_get_contents est une fonction de lecture de fichiers simple et directe adaptée à la lecture du contenu de fichier entier. Il charge tous les contenus du fichier en mémoire à la fois et revient sous forme de chaîne.
$file_contents = file_get_contents('file.txt');
echo $file_contents;
Dans le code ci-dessus, File_get_contents lit un fichier nommé file.txt et publie son contenu.
En plus des fichiers locaux, File_get_contents peut également être utilisé pour lire les fichiers distants. Passez simplement l'URL du fichier distant.
$file_contents = file_get_contents('http://www.example.com/file.txt');
echo $file_contents;
Dans cet exemple, un fichier texte hébergé sur un serveur distant est lu et son contenu est sorti.
File_get_Contents peut également être utilisé pour lire le contenu des fichiers binaires tels que les images. Définissez simplement les paramètres appropriés.
$file_contents = file_get_contents('image.png', true);
echo $file_contents;
En définissant le deuxième paramètre, la fonction peut être dite de lire le fichier dans un mode spécifique, comme la lecture d'un flux binaire.
Par rapport à File_get_Contents , Fread offre une flexibilité plus élevée, en particulier adaptée à la gestion des fichiers volumineux ou des situations où la lecture segmentée est requise. C'est une façon de lecture basée sur le flux.
$file_handle = fopen('file.txt', 'r');
$file_size = filesize('file.txt');
$file_contents = fread($file_handle, $file_size);
fclose($file_handle);
echo $file_contents;
Dans cet exemple, utilisez FOPEN pour ouvrir le fichier, la taille des fichiers pour obtenir la taille du fichier, Fread pour lire le contenu et enfin fermer la poignée du fichier.
Si vous avez seulement besoin de traiter le contenu du fichier ligne par ligne, FGETS est idéal et vous pouvez implémenter la logique de lecture de ligne en combinaison avec Fread .
$file_handle = fopen('file.txt', 'r');
while (!feof($file_handle)) {
$line = fgets($file_handle);
echo $line;
}
fclose($file_handle);
Le code ci-dessus lit le contenu du fichier ligne par ligne via la boucle, ce qui convient au traitement au niveau de la ligne des fichiers journaux ou du grand texte.
PHP fournit une variété de façons de lire des fichiers, où File_get_Contents convient plus pour lire rapidement le contenu complet du fichier, tandis que Fread fonctionne mieux lors de la gestion des fichiers volumineux ou nécessitant une lecture à la demande. Les développeurs doivent choisir de manière flexible les méthodes de lecture appropriées selon différents scénarios pour améliorer les performances et la maintenabilité du programme.