(PHP 4, PHP 5)
file — Lit le fichier et renvoie le résultat dans un tableau
Lit le fichier et renvoie le résultat dans un tableau.
Note: Vous pouvez utiliser la fonction file_get_contents() pour retourner le contenu d'un fichier dans une chaîne de caractères.
Chemin vers le fichier.
Vous pouvez utiliser une URL comme nom de fichier avec cette fonction, si le gestionnaire fopen a été activée. Voyez fopen() pour plus de détails sur la façon de spécifier le nom du fichier et Liste des protocoles supportés pour une liste des protocoles URL supportés.
Le paramètre optionnel flags peut être une ou plusieurs des constantes suivantes :
Une ressource de contexte valide, créée avec la fonction stream_context_create().
Note: Le support de contexte a été ajouté en PHP 5.0.0. Pour une description des contexts, référez-vous à Fonctions sur les flux.
Retourne le fichier dans un tableau. Chaque élément du tableau correspond à une ligne du fichier, et les retours-chariot sont placés en fin de ligne. Si une erreur survient, file() retournera FALSE.
Note: Chaque ligne du tableau résultant inclura la fin de ligne, tant que FILE_IGNORE_NEW_LINES est utilisé, donc, vous avez toujours besoin d'utiliser la fonction rtrim() si vous ne voulez pas de fin de lignes.
Note: Si vous avez des problèmes avec PHP qui ne reconnaît pas certaines lignes lors de la lecture de fichiers qui ont été créés ou lus sur un MacIntosh, vous pouvez activer l'option de configuration auto_detect_line_endings.
Version | Description |
---|---|
6.0.0 | Ajout du support des drapeaux FILE_TEXT et FILE_BINARY. |
5.0.0 | Le paramètre context a été ajouté. |
5.0.0 | Avant PHP 5.0.0, le paramètreflags ne couvre que l'include_path et est activé s'il vaut 1. |
4.3.0 | file() devient compatible avec les données binaires. |
Exemple #1 Exemple avec file()
<?php
// Lit une page web dans un tableau.
$lines = file('http://www.example.com/');
// Affiche toutes les lignes du tableau comme code HTML, avec les numéros de ligne
foreach ($lines as $line_num => $line) {
echo "Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br />\n";
}
// Un autre exemple, pour obtenir une page web dans une chaîne. Voir aussi la fonction file_get_contents().
$html = implode('', file('http://www.example.com/'));
// Utilisation de drapeau, depuis PHP 5
$trimmed = file('somefile.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
?>
Lorsque vous utilisez SSL, le serveur IIS de Microsoft violera le protocole en fermant la connexion sans envoyer l'indicateur close_notify. PHP le reportera en tant que "SSL: Fatal Protocol Error" quand vous arrivez à la fin des données. L'astuce est de baisser le niveau de la directive error_reporting pour ne pas inclure les warnings. À partir de PHP 4.3.7, le bogue est détecté automatiquement lors de l'ouverture du flux en utilisant https:// et supprimera cet avertissement pour vous. Si vous utilisez fsockopen() pour créer une socket ssl://, vous devez vous occuper vous-même de supprimer l'erreur.