Manipuler les fichiers avec PHP
Aujourd'hui, dans cette nouvelle quête, tu vas voir comment manipuler les fichiers avec PHP.

Qu'il s'agisse de simples fichiers textes (txt, csv, ...), d'images ou tous autres documents (pdf, etc.), tu vas voir que, tout ce que tu peux faire en ligne de commande pour jouer avec tes fichiers, PHP est capable de le faire sur son serveur.

Tu te demandes peut-être quel est l’intérêt de jongler avec des fichiers en PHP ? Eh bien il arrive que parfois, certaines données d'un site internet soient directement stockées dans des fichiers textes. Tu peux également être amené à développer une application de gestion de bibliothèque de documents ou de photos. Tu peux trouver plein d'autres raisons qui te poussent à manipuler des fichiers. Mais cessons de parlementer et passons à l'action !
Objectifs
- Ouvrir et lire un fichier déjà existant,
- Créer et écrire dans un nouveau fichier,
- Déplacer, copier et supprimer un fichier.
Lire et modifier le contenu d'un fichier texte
Pour lire un fichier, il y a plusieurs manières de procéder, en fonction du type de fichier et de ce que l'on souhaite faire du contenu.

Si tu souhaites uniquement récupérer le contenu d'un fichier texte, cette méthode sera celle à retenir.
En revanche, si tu veux une gestion un peu plus poussée de la lecture d'un fichier, cette méthode est la bonne.
Si tu veux savoir ce qui différencie concrètement les deux précédentes méthodes.
Il se peut aussi que tu sois obligé de récupérer des informations depuis un fichier .xml.
Copier, déplacer des fichiers

Mais non, tu vas voir, c'est assez simple.
Pour copier un fichier, il faut faire appel à la fonction copy :
<?php
copy ($source, $destination)
En fonction de ce que tu passes comme valeur à $destination, tu peux copier le fichier dans un autre répertoire.
Pour ce qui est de déplacer un fichier, ne cherche pas la méthode move, tu perdrais ton temps. C'est grâce à rename que tu peux déplacer un élément.
<?php
rename( $oldname , $newname );
Soit $oldname et $newname renvoient au même répertoire et, dans ce cas-là, tu renommes juste le fichier, soit ils correspondent à des répertoires différents et le fichier est alors déplacé.
Challenge
Rassembler les preuves
À partir de tout ce que tu as pu lire et voir ci-dessus, tu dois recréer un gestionnaire de fichiers. Pour te simplifier la vie, tu dois récupérer le template à cette adresse : template "FBI Archives"
Ressources
- Édition de fichiers en PHP Ce tutoriel vidéo va t'aider à réaliser une interface d’édition de fichiers. C'est à l'aide de ce support que tu vas pouvoir accomplir ton challenge.
- Fonctions sur les systèmes de fichiers Tu trouveras ici toutes les méthodes PHP te permettant de manipuler des fichiers.

Critères de validation
- L'application permet de :
- Lister dynamiquement les répertoires et fichiers contenus dans
/files, - Supprimer un fichier ou un répertoire,
- Éditer un fichier texte (.txt/.html),
- L'ensemble de ton code est disponible sur un dépot Github.