Cours ⇒ Cour PHP facebook twitter youtube

Les Fichiers en php ⇒ & Manipulation de répertoires



Manipulation de répertoires

1-Pointer sur un répertoire 5- Créer un répertoire
2-Ouvrire un dossier 6-Supprimer un répertoire
3-Type du contenu d'un répertore 7-Afficher le chemin parent du répertoire
4-Afficher tous les fichier d'un répertoire  

 

 

1-Pointer sur un répertoire

dir()

Cette fonction permet a poiner sur un répértoire qui permttera ensuite de lire dans ce répertoire.Elle prend en paramétre une chaine des caractéres contenant le chemin du répertoire:

EXEMPLE:

Par exemple si je veut lire un fichier fichierOO.txt qui se trouve dans le répertoire C:\wamp\wwwalor /

<?php
         $derectory = dir("/wamp/www");
         echo "pointeur :" . $derectory->handle ."<br>";
         echo "chemin :" . $derectory->path ."br>";
         while ($entry = $derectory->read()){
         echo $entry ."<br>";
         }
         $derectory->close();
         ?>

affiche:

pointeur :Resource id #3
chemin :/wamp/wwwbr>.
..

fichierOO.txt
index.php


Explication de la fonction dir

La fonction dir() elle crée un objet $directory qui contient des propriétes handle et path ayant pour valeur le chemin du dossier .il ya la fonction is_dir() retourne true si le répertoire existe et false si il n'éxiste pas .Cette fonction prend en paramétre une chaine de caractéres cotenant le nom de répertoire.

is_dir()

Exemple:

<?php 
         if (is_dir("/wamp/www")){echo " le répertoire www il existe ";}
         else {echo "le répertoire www il éxiste pas";}
         ?>

AFFICHE: le répertoire www il existe


2-Ouvrire un dossier

opendir()

Cette fonction permet d'ouvrire un répertoire .Elle prend en paramétre une chaine de caractéres contenant le nom de répertoire ,elle retourne un pointeur sur ce répertoire .Cette fonction elle est toujour associée à readdir() qui permet de lire tous les fichiers et les sous répertoire d'un répertoire.

EXEMPLE:

<?php 
         if ( $pointeur = opendir('.')){
         //ouvrire un répertoire courant
         //C:\wamp\www
         while ($fichier = readdir($pointeur))
         //un fichier dans le répertoire
         if ($fichier !='.' && $fichier != ".."){echo "$fichier <br>";    }
         }
         close($pointeur);
         ?>

AFFICH:

contact.php
dossier1
envoie.php
envoi_post.php
fichier.php
fichier1.txt

C'est -à-dir le contenu du répertoire C:\wamp\www sans les dossiers . et .. propose à WINDOWS;


3-Type du contenu d'un répertore

filetype()

Cette fonction retourne le type du contenu d'un répertoire ,c'est-a-dir un fichier ou sous dossier .Elle prend en paramétre une chaine de caractéres contenant le nom du répertoire ou le fichier.

EXEMPLE:

DANS notre répertoireC:\wamp\www il ya jai deux fichiers compteur.html
contact.php et un dossier dossier1

<?php 
         if ( $pointeur = opendir('.')){
         //ouvrire un répertoire courant
         //C:\wamp\www
         while ($fichier = readdir($pointeur))
         //un fichier dans le répertoire
         if ($fichier !='.' && $fichier != ".."){echo $fichier ."De type " .filetype($fichier)."<br>";    }
         }
         close($pointeur);
         ?>

 

AFFICHE:

compteur.htmlDe type file
contact.phpDe type file
dossier1De type dir


4-Afficher tous les fichier d'un répertoire

glob()

Cette fonctoin permet de retourner un tableau contenant tous les fichiers d'un répertoire respectant un masque donné.Cette fonction prend en paramétre une chaine de caractére contenant le masque des fichiers à retourner.par exemple ,si dans notre répertoire www,nous avons les deux fichiers test.php et fichier1.txt et un sous répertoire applé image:

<?php
         $fichier= glob('./*.txt');
         print_r($fichier);
         ?>

AFFICHE:

Array ( [0] => ./fichier1.txt [1]

./*.txt

 

tous les fichiers texte du répertoire courant

Et si vous voullez chercher tous les fichiers .png du répertoire image situé dans le répertoire courant (www) il faut tapez

<?php
         $fichier= glob('./image/*.png');
         print_r($fichier);
         ?>

5- Créer un répertoire

mkdir()

Cette fonction permet de créer un drépertoire dans le répertoire courant EXEMPLE SI VOUS VOULLEZ créer un dossies test03 dans le répertoire www

<?php
         echo getcwd();
         mkdir('test5');//CR2ATION DU RéPERTOIRE test3
         chdir('test5');//DéPLACEMENT DANS LE RéPERTOIREtest3
         echo getcwd();
         ?>

 


6-Supprimer un répertoire

rmdir()

 

Cette fonction permet de supprimer un répertoire par exemple supprimer le répertoire test3 dans www

<?php
echo getcwd()."<br>";//afficher le chemin du fichier
rmdir('test3');//supprimer test3
echo "le dossier est bien supprimer";
?>

REMARQUE IMPORTANT

LE DOSSIER IL FAUT QUI SOIT VIDE


7-Afficher le chemin parent du répertoire

Il ya deux fonction pour afficher le chemin parent du nom du répertoire ,une chaine de caractéres passée en paramétre

exemple

<?php
         $chemin ='wamp/www/test/test';
         $repertoire = dirname($chemin);
         echo $repertoire;
         ?>

AFFICHE:wamp/www/test

PATHIINFO

 

LA meme chose exemple

<?php
$tableau_info = pathinfo('wamp/www/test/langage_informatique/test');
echo $tableau_info['dirname']."<br>";//pour chemin parent
echo $tableau_info['basename']."<br>";//pour les répertoire
echo $tableau_info['filename']."<br>";//pour les fichier
?>

AFFICHE:wamp/www/test
test
test


Les includes

include

Cette fonction include() est trés important et trés utile car elle permet d'appler une autre page PHP dans une page PHP .Si vous marquez include('fichier.php'),cela revient à coller le code cotenu dans la page fichier.php à lendroit ou vous applez la fonction include().Cette fonction reçoit donc en paramétre le nom de la page php à inclure.

EXEMPLE

Si vous avez une page fichier2.php qui contenant le code suivant:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans titre</title>
</head>
<body>
<?php
           $nom ="Souci";
           $prenom ="Ahmed";
           ?>
</body>
</html>

Et dans votre page php courante vous appelez l'include de cette façon

<?php
         include('fichier2.php');
         echo $nom." ".$prenom;
         ?>

 

AFFICHE:

Souci Ahmed

SI VOTRE FICHIER fichier2.php se trouve dans un répertoire rept,le code pour appeler cette pag serait:

include('rept/fichier2.php');

Changer le fond
Oregionale Skin
7astuces
Sélectionnez un Fond (11)
7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces
Fond de contenu
7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces 7astuces