Lecture rapide d'un fichier
* int readfile (string filename [, int use_include_path])
description : La fonction readfile permet d'afficher à l'écran un fichier. Cette fonction se charge d'elle même d'ouvrir le fichier au préalable. si "http://" est mentionné en début de filename, readfile provoque l'ouverture et l'affichage de l'url spécifiée, de même avec ftp:// si le serveur ftp supporte le mode PASV.
Exemple :
<?
// affiche le fichier monfichier.txt
readfile ("monfichier.txt");
// affiche le contenu de l'url
readfile ("http://www.asp-magazine.com/") ;
?>
Note : la fonction readfile ne supporte pas la redirection, ceci signifie qu'il faut ajouter "/" à la fin de l'url indiquée, s'il s'agit d'un répertoire.
Ouverture d'un fichier
* int fopen (string filename, string mode [, int use_include_path])
description : la fonction fopen permet d'ouvrir un fichier dans le mode spécifié par "mode". "filename" peut représenter un fichier sur le disque, ou située à une url distante.
* string filename
La variable filename peut prendre plusieurs formes :
- - commence par http:// - fopen ouvre le fichier distant indiqué dans l'url
- - commence par ftp:// - fopen ouvre le fichier situé sur un serveur ftp supportant le mode passif (PASV)
* string mode
Le mode d'ouverture du fichier peut prendre les valeurs suivantes :
- "r" - Ouvre en lecture seule, et place le pointeur de fichier au début du fichier.
- "r+" - Ouvre en lecture et écriture, et place le pointeur de fichier au début du fichier.
- "w" - Ouvre en écriture seule; place le pointeur de fichier au début du fichier et réduit la taille du fichier à 0. Si le fichier n'existe pas, on tente de le créer.
- "w+" - Ouvre en lecture et écriture; place le pointeur de fichier au début du fichier et réduit la taille du fichier à 0. Si le fichier n'existe pas, on tente de le créer.
- "a" - Ouvre en écriture seule; place le pointeur de fichier à la fin du fichier file. Si le fichier n'existe pas, on tente de le créer.
- "a+" - Ouvre en lecture et écriture; place le pointeur de fichier à la fin du fichier. Si le fichier n'existe pas, on tente de le créer.
Note : un fichier ouvert à l'aide de la fonction fopen doit être fermé avec la fonction fclose.
* int fclose (int fp)
Exemple d'ouverture de fichiers :
<?
// ouverture sur un serveur ftp
$fichier = fopen("ftp://login:mot_de_passe@nom_du_serveur_ftp/nom_du_fichier", "w");
// ouverture sur un serveur http
$fichier = fopen("http://www.asp-magazine.com/","r")
// ouverture d'un fichier en local (sur le serveur)
$fichier = fopen("/mon_rep/mon_fichier.txt","r")
?>
Lecture d'un fichier en une seule fois
* int fpassthru (int fp)
description : Cette fonction est identique à readfile mais elle n'ouvre pas automatiquement un fichier. Il faut donc l'utiliser avec fopen. La fonction retourne false si une erreur s'est produite.
exemple :
<?
// ouverture du fichier en lecture
$fichier = fopen ( "monfichier.txt" ,," r " ) ;
// affichage du fichier
fpassthru($fichier) ;
?>
Lecture de fichier ligne par ligne (octet par octet)
* string fgets (int fp, int length)
description : la fonction fgets permet de lire une chaîne dans un fichier (fp : préalablement ouvert avec fopen par ex) à partir de la position courante, dont la longueur est spécifiée par length.
Exemple :
<?
// ouverture du fichier à lire
$fichier = fopen ("/mon_rep/mon_fichier.txt", "r");
// Tant qu'on est pas à la fin
while (!feof($fichier)) {
// lire 4096 octets
$buffer = fgets($fichier, 4096);
// Ecrire à l'écran la chaîne lue
echo $buffer;
}
fclose ($fichier);
?>
Ecrire dans un fichier
* int fwrite (int fp, string string [, int length])
description : la fonction fwrite permet d'écrire (mode binaire) dans un fichier $fp, le contenu de la variable string (d'une longueur de length octets).
Exemple : Ajouter une ligne dans un fichier texte
<?
// ouverture du fichier en mode lecture- écriture : le pointeur est à la fin du fichier
$fichier=fopen($filename, 'a+');
// écriture de la ligne
fwrite($fichier,"Nouvelle ligne à insérer \n")
// fermeture du fichier
fclose ($fichier);
?>