En PHP, les opérations de lecture de fichiers sont des tâches très courantes et la fonction fGet () fournit la fonction de lecture de données ligne par ligne à partir d'un fichier. Cette fonction est particulièrement adaptée à la gestion de grands fichiers texte et peut lire efficacement chaque ligne de données. Cet article introduira en détail comment utiliser la fonction FGETS () et fournira des exemples de code pratiques pour aider les lecteurs à mieux maîtriser cette fonction.
La syntaxe de base de la fonction fgets () est la suivante:
string fgets ( resource $handle, int $length );
Parmi eux, les paramètres sont expliqués comme suit:
Supposons que nous ayons un fichier texte appelé example.txt, avec le contenu suivant:
Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incididunt
ut labore et dolore magna aliqua.
Nous pouvons utiliser le code suivant pour lire le contenu du fichier ligne par ligne et sortie:
$handle = fopen("example.txt", "r");
if ($handle) {
while (($line = fgets($handle)) !== false) {
echo $line . "<br>";
}
fclose($handle);
} else {
echo "Impossible d'ouvrir le fichier";
}
Ce code utilise d'abord la fonction fopen () pour ouvrir le fichier Exemple.txt et enregistre les ressources de fichier renvoyées dans la variable de manche $ . Ensuite, dans une boucle de temps , utilisez la fonction FGETS () pour lire le contenu du fichier ligne par ligne et sortir chaque ligne de données sur la page. Enfin, fermez le fichier à l'aide de la fonction fclose () .
Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incididunt
ut labore et dolore magna aliqua.
Dans certains cas, il peut être nécessaire de lire une partie de chaque ligne. Le deuxième argument de la fonction FGETS () $ nous permet de limiter le nombre d'octets lus par lecture. L'exemple de code suivant montre comment lire les 10 premiers octets de chaque ligne:
$handle = fopen("example.txt", "r");
if ($handle) {
while (($line = fgets($handle, 10)) !== false) {
echo $line . "<br>";
}
fclose($handle);
} else {
echo "Impossible d'ouvrir le fichier";
}
Ce code spécifie le deuxième paramètre 10 dans la fonction FGETS () , indiquant que 10 octets sont lus à la fois. Les résultats après exécution sont les suivants:
Lorem ipsu
consectetu
sed do
ut labore
En plus de sortir directement le contenu du fichier, nous pouvons traiter davantage les données lors de la lecture de chaque ligne. Par exemple, nous pouvons compter le nombre de caractères pour chaque ligne dans un fichier et stocker le résultat dans un tableau. Voici un exemple de code qui implémente cette fonction:
$handle = fopen("example.txt", "r");
$result = [];
if ($handle) {
while (($line = fgets($handle)) !== false) {
$lineLength = strlen($line);
$result[] = $lineLength;
}
fclose($handle);
} else {
echo "Impossible d'ouvrir le fichier";
}
print_r($result);
Dans cet exemple, nous utilisons la fonction strlen () pour calculer le nombre de caractères par ligne et l'enregistrer dans le tableau de résultat $ . Contenu du tableau de sortie final:
Array
(
[0] => 28
[1] => 28
[2] => 30
[3] => 24
)
La fonction FGETS () est une fonction de traitement de fichiers très utile dans PHP, qui peut nous aider à lire la ligne de données par ligne à partir d'un fichier. En utilisant de manière flexible cette fonction, nous pouvons facilement traiter de grands fichiers texte et fonctionner et traiter le contenu du fichier en fonction des besoins réels. La maîtrise de l'utilisation de FGETS () rendra les opérations de lecture de fichiers plus efficaces et plus pratiques.