|
Écrire, lire, créer, 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
après avoir ouvert le fichier avec le mode que vous désirez nous
écrirons dans ce fichier notre texte :
fwrite($fp,"Texte...");// Ceci ajoutera ou écrira
// le contenu "texte ..." dans le fichier "le_fichier.txt"
[ TOP ]
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
Extraire
Ensuite après avoir ouvert le fichier nous choisissons
un mode d'extraction des informations :
- X premiers caractères
- première ligne
- ligne par ligne
- tout le contenu
- Extraire les X premiers caractères :
$premiers_caracteres=fread($fp,"153");
// Ceci affichera les 153 premiers caractères que
// contient le fichier.
- Extraire le contenu de la première 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 caractères = 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 récupère dans le fichier le contenu
print"$toute_ligne "; // On écrit le résultat 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 récupère tout le contenu (grâce à la boucle while)
print $toute_ligne; // On écrit le résultat
}
-
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 intégral du fichier
[ TOP ]
Créer
Pour créer un fichier on utilisera touch("nom_du_fichier.txt");
c'est une fonction qui permet de créer un fichier si celui-ci n'existe
pas :
- Exemple :
touch("nom_du_fichier.txt");
// Ceci créera le fichier texte nom_du_fichier.txt
[ TOP ]
Supprimer
Maintenant passons à la suppression
de ce fichier que nous venons de créer, pour cela nous utiliseront unlink("nom_du_fichier.txt");
qui supprimera ce fichier que s'il a été auparavant crée
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
[ TOP ]
Vérifier
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 !";}
[ TOP ]
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 définir 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 très certainement
il vous suffit d'utiliser la fonction number_format() , en voici un exemple
:
$taille_fichier=number_format($taille_fichier,"nombre de décimales à afficher",
"virgule ou point pour les nombres décimales","séparation du millier");
[ TOP ]
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 exécuté";}
else{echo "Le fichier ne peut pas être exécuté !";}
// Test si le fichier peut être exécuté
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
[ TOP ]
|