Description
array
file ( string filename [, int use_include_path [, resource context]] )
file() est identique à file_get_contents(),
hormis le fait que file() retourne le fichier
filename dans un tableau.
Chaque élément du tableau correspond à une ligne du fichier,
et les retour-chariots sont placés en fin de ligne.
Note :
Chaque élément du tableau résultat contiendra la nouvelle ligne de fin de chaîne.
Il faudra donc utiliser rtrim() sur cette valeur
pour la supprimer.
Vous pouvez utiliser l'option use_include_path :
en la mettant à "1", vous rechercherez aussi dans le dossier
include_path.
file() utilise le contexte context,
pour les connexions réseau.
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 'Ligne No <strong>' . $line_num . '</strong> : ' . 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/')); ?>
|
|
Note :
Depuis PHP 4.3.0, vous pouvez utiliser file_get_contents()
pour lire le contenu d'un fichier dans une chaîne.
En PHP 4.3.0, file() est désormais compatible avec les données
binaires.
Note : Le support de contexte a été
ajouté en PHP 5.0.0. Pour une description des contexts,
référez-vous à Référence CLIII, Flux.
| Avertissement |
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. |
Voir aussi
readfile(),
fopen(),
fsockopen(),
popen(),
file_get_contents() et
include().