8 - Gestion des dossiers et des fichiers en php

1 - Gestion des fichiers avec php

Depuis sa version 4 php offre à son utilisateur la possibilité de manipuler des objets : comme création, suppression, écriture dans des fichiers, modification des images ... Les principales fonctions qui manipulent les fichiers en php sont :
touch() 
La fonction touch permet de créer des fichiers sa syntaxe est :
Touch('$nom_fichier') ; 
$nom_fichier désigne le nom du fichier à créer y compris le chemin.

Exemple :

< ?php
touch('c: \ test.doc');
?>
C'est un exemple permet la création d'un document Word à la racine du disque dur C:\   nommé test.doc
Unlink() : La fonction unlink est utilisée en php pour supprimer un fichier qui existe déjà sa syntaxe est :  unlink('$nom_fichier') ;

Exemple :

<?php

unlink('c:\test.doc');

?>

C'est un exemple qui permet la suppression du document Word test.doc que nous venons de créer à l’aide de l’exemple précédent.

 

fopen()
La fonction fopen permet l'ouverture des fichiers sa syntaxe est :
$fichier = fopen('$nom_fichier', 'mode de l'ouverture') ;
Les mode d'ouverture sont :
r : mode lecture seule
r+ : mode lecture et écriture
a : mode lecture seule et place le curseur à la fin du fichier
a+ : mode lecture et écriture et place le curseur à la fin du fichier
w : mode écriture seulement et la fonction crée le fichier s'il n'existe pas
w+ : mode lecture et écriture et la fonction crée le fichier s'il n'existe pas
fputs()
La fonction fputs permet d'écrire sur des fichiers sa syntaxe est :

fputs($fichier,″le texte que vous sohaitez mettre sur le fichier ″) ;

Exemple :

<?php

$fp=fopen('c:\test.doc','a+');

fputs($fp,"voila que finalement j'arrive à écrire sur un fichier à l'aide de php");

?>

rename()
La fonction permet de renommer un fichier existant sa syntaxe est :

rename($ancien,$nouveau);
copy()
Cette function permet de copier un fichier. Sa syntaxe est :
     
copy($source , $destination) ;
read()
Cette fonction permet de lire un fichier existant

Exemple :

<?php
    
readfile('c:\test.doc');
    
?>

file_exists()
    Cette fonction permet de tester si le fichier existe ou non

Exemple :

    <?php
    if(file_exists('c:\test.doc'))
    echo"le fichier existe";
    else
    echo"le fichier n'existe pas";
    ?>
 
file_type()
Cette fonction détermine le type de fichier. Sa syntaxe est :
 
file_type($fichier) ;
file_size( )
Cette fonction renvoie la taille du fichier. Sa syntaxe est :
  file_size($fichier) ;
 fgetc()
  Cette fonction permet de lire un fichier caractère par caractère

Exemple :

voici un exemple qui permet de lire le premier caractère d'un fichier nommé fichier.txt

<?php
   
$fp = fopen('fichier.txt', 'r'); //Ouvre le fichier en lecture seule.
     
$caract1 = fgetc($fp); //$caract1 prend comme valeur le premier caractère du fichier
     
$caract2 = fgetc($fp); //$caract2 prend comme valeur le 2ème caractère du fichier.
  
fclose($fp); 
   
?>
feof()
Cette fonction permet de savoir si la fin du fichier est atteint ou non, nous allons voir comment peut on utiliser cette fonction pour lire la totalité d'un fichier.

Exemple :

<?php
    
$fp=fopen("fichier.txt","r");
    
$caract=' ';
    
while(!feof($fp)){
    
$caract .=fgetc($fp);
    
}
    
echo $caract;
    
fclose($fp);
    
?>

voici un exemple qui combine entre fgetc() et feof () pour lire un fichier totalement

fgets()
    Cette fonction permet de lire un fichier ligne par ligne

Exemple :

Voici un exemple permetttant d'afficher la première ligne d'un fichier

<?php
    
$fp=fopen("fichier.txt" , "r");
    
$ligne=fgets($fp);
    
echo $ligne;
    
fclose($fp);
    
?>

Exemple :

Voici un exemple qui combine entre feof() et fgets() pour lire un fichier en entier

<?php
    
$fp=fopen("test.txt" , "r");
    
$contenu=' ';
    
while(!feof($fp)){
    
$contenu =fgets($fp);
    
echo $contenu;
    
echo'<br>';
    
}
    
fclose($fp);
    
?> 

2 - Gestion des dossiers avec php

2 - 1   Création d'un dossier avec php

Pour créer un dossier on utilise l'instruction mkdir dont la sytaxe est la suivante :

mkdir('nom_du_dossier' , 'droit d'acées')

Exemple :

Pour créer un dossier nommé new au sein du dossier www de wamp on utilise le code :

<?php

mkdir('new');

?>

Puis on enregistre le fichier à la racine du serveur ( ie dans le dossier www/ ). On tape ensuite son adresse url.

2 - 2   Lecture du contenu d'un dossier avec php

Pour lire le contenu d'un dossier on doit d'abord l'ouvrir avec l'instruction opendir( ) et le lire ensuite avec l'instruction readdir( )

Exemple :

Pour lire le contenu d'un dossier nvd qui se trouve à l'intérieur du dossier www on doit créer un fichier php à la racine du serveur on le nomme readdir.php par exemple et dont le code :

<?php

$open=opendir('nvd');

while($res=readdir($open)){

echo"$res<br />";

}

?>

Exemple :

Pour lire le contenu du dossier parent on utilise la commande $open=opendir(..)

Par exemple si le fichier qui contient le code d'ouverture $open=opendir(..)se trouve à la racine du serveur wamp, le résultat retourné en tapant l'adresse url de ce fichier est :
.
..
Apache2
barimage.bmp
images_off.bmp
images_on.bmp
install_mysql_service.bat
install_services.bat
install_services_auto.bat
lang
launch_wampserver.bat
license.txt
logs
mysql
php
phpmyadmin
scripts
sqlitemanager
tmp
unins000.dat
unins000.exe
uninstall_services.bat
wamp5.chm
wampmanager.conf
wampmanager.exe
wampmanager.ini
wampmanager.tpl
wampserver.ico
www

Suppression d'un répertoire

Pour supprimer un répertoire on utilise l'instruction rmdir(' nom_du dossier ' ).

1 thought on “8 - Gestion des dossiers et des fichiers en php

Leave a Reply