|
[ Cours php - crire, lire, crer, supprimer
un fichier ]
Ecrire : Pour crire
dans un fichier, c'est dire ajouter ou crire nous utiliserons
la fonction fwrite() en voici deux applications : - Mode ajout :
|
$fp=fopen("le_fichier.txt","a");
// Ouverture du fichier avec le mode ajout
|
-
Mode
criture :
|
$fp=fopen("le_fichier.txt","w");
// Ouverture du fichier avec le mode criture
|
Ensuite
aprs avoir ouvert le fichier avec le mode que vous dsirez nous
crirons dans ce fichier notre texte :
|
fwrite($fp,"Texte
..."); // Ceci ajoutera ou crira
le contenu "texte ..." dans le fichier "le_fichier.txt"
|
Lire : Pour lire les informations d'un fichier nous utiliseront la fonction
fopen(); :
|
$fp=fopen("le_fichier.txt","r");
// r indique donc que nous lisons ce fichier en lecture
seule
|
Ensuite aprs avoir ouvert le fichier nous choisissons
un mode d'extraction des informations : - X premiers caractres -
premire
ligne - ligne par ligne - tout le contenu
- Extraire les X premiers caractres :
|
$premiers_caracteres=fread($fp,"153");
// Ceci affichera les 153 premiers caractres que
contient le fichier.
|
- Extraire le contenu de la premire ligne : pour cela on va se servir
de la fonction fgets() :
|
$premiere_ligne=fgets($fp,1024);
// Une ligne dans un fichier texte quivant
1024 octets (= 1024 caractres = 1 Ko)
|
- Extraire tout le contenu ligne par ligne :
|
while(!feof($fp))
// Tant que l'on n'est pas la fin du fichier
on continue de lire le fichier { $toute_ligne=fread($fp,1024);
// On rcupre dans le fichier le
contenu print
"$toute_ligne<br>"; // On crit
le rsultat ligne par ligne }
|
-
Extraire tout le contenu :
|
while(!feof($fp)) //
Tant que l'on n'est pas la fin du fichier on continue de lire le fichier { $toute_ligne=fread($fp,153);
// On rcupre tout le contenu (grce
la boucle while) print
$toute_ligne; // On crit le rsultat }
|
-
Vous pouvez aussi afficher tout le contenu en relevant la taille du fichier,
exemple :
|
$taille_fichier=filesize("le_fichier.txt");
// Contient la taille du fichiet en octet $contenu_integral=fread($fp,$taille_fichier);
// Contient le contenu intgral du fichier
|
Crer : Pour crer un fichier on utilisera touch("nom_du_fichier.txt");
c'est une fonction qui permet de crer un fichier si celui-ci n'existe
pas : - Exemple :
|
touch("nom_du_fichier.txt");
// Ceci crera le fichier texte nom_du_fichier.txt
|
supprimer : Maintenant passons la suppression
de ce fichier que nous venons de crer, pour cela nous utiliseront unlink("nom_du_fichier.txt");
qui supprimera ce fichier que s'il a t auparavant cre
par php ou s'il est en chmod 777 c'est dire que tous les droits sur
ce fichier sont permis ... Exemple :
|
unlink("nom_du_fichier.txt");
// Ceci supprimera le fichier texte nom_du_fichier.txt
|
Vrifier
l'existance d'un fichier : Pour cela nous utiliseront simplement la fonction
file_exists() :
|
if(file_exists("le_fichier.txt")){echo "Le fichier
existe ...";} // Si le fichier existe else{echo "Le fichier n'existe pas !";}
|
Mesurer
la taille d'un fichier : Pour cela nous utiliseront simplement la fonction
filesize() :
|
$taille_fichier=filesize("le_fichier.txt");
// Contient la taille du fichier en octet
|
Si
vous souhaitez dfinir une taille en Ko vous devez faire comme cela :
|
$taille_fichier=filesize("le_fichier.txt"); $taille_ko=$taille_fichier/1024;
|
Ou
encore en Mo :
|
$taille_fichier=filesize("le_fichier.txt"); $taille_mo=$taille_fichier/1000000;
|
Pour
viter les nombres virgules que vous obtiendrez trs certainement
il vous suffit d'utiliser la fonction number_format() , en voici un exemple
:
|
$taille_fichier=number_format($taille_fichier,"nombre
de dcimales afficher","virgule
ou point pour les nombres dcimales","sparation
du millier");
|
Le statut d'un fichier :
|
if(is_readable("le_fichier.txt")){echo
"Le fichier peut tre lu";} else{echo "Le fichier ne
peut pas tre lu !";} // Test si le
fichier peut tre lu
|
|
if(is_executable("le_fichier.txt")){echo
"Le fichier peut tre excut";} else{echo
"Le fichier ne peut pas tre excut !";} //
Test si le fichier peut tre excut
|
|
if(is_writable("le_fichier.txt")){echo
"On peut crire dans ce fichier";} else{echo "Ecriture
impossible dans ce fichier !";} // Test s'il
est possible d'crire dans le fichier
|
|