IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

FAQ PHP

FAQ PHPConsultez toutes les FAQ

Nombre d'auteurs : 68, nombre de questions : 580, dernière mise à jour : 18 septembre 2021 

 
OuvrirSommaireFichiers et dossiersNom / chemin des fichiers et dossiers

La fonction getcwd() qui ne prend aucun paramètre renvoie sous forme de chaîne le chemin complet du répertoire courant.

PS : Cette fonction étant spécifique UNIX, nous devons utiliser sous Windows le code suivant :

 
Sélectionnez
$current_dir = getcwd();
$current_dir = str_replace("\\", "/", $current_dir); // Utilisateurs de Windows, pensez à changer vos antislashes
Mis à jour le 5 août 2008  par Julp

Il existe plusieurs méthodes pour extraire le nom d'un fichier d'un chemin complet.

Exemple 1, le chemin est compatible avec le système de fichiers du serveur :

 
Sélectionnez
<?php
$path = '/var/www/html/docs/fichier.tex';
$file = basename($path);
echo $file; // affiche 'fichier.tex'
?>

Exemple 2, la chaîne séparatrice des répertoires est connue :

 
Sélectionnez
<?php
$file = array_pop(explode('/', $path));
?>

Ici, la foncion explode() scinde le chemin en un tableau, le caractère '/' délimitant les éléments à séparer. Ainsi chaque répertoire donne lieu à un élément distinct du tableau retourné. La fonction array_pop() retourne le dernier élément du tableau, c'est-à-dire le nom de fichier recherché.

Mis à jour le 5 août 2008  par Cyberzoide

PHP offre trois possibilités pour déterminer le nom d'un dossier à partir du chemin d'un fichier qui y est contenu, cela se fait avec les fonctions dirname, pathinfo et la classe SplFileInfo. L'exemple ci-dessus illustre chacune des possibilités.

 
Sélectionnez
// Chemin du fichier 
$chemin_fichier = 'c:\repertoire\dossier1\fichier.txt';
 
// avec la fonction dirname
echo dirname( $chemin_fichier );
 
 
// avec la fonction pathinfo
echo pathinfo( $chemin_fichier, PATHINFO_DIRNAME );
 
// avec la classe SplFileInfo
$finfo_objet = new SplFileInfo( $chemin_fichier );
echo $finfo_objet->getPath();
 
// dans tous les cas nous avons : c:\repertoire\dossier1
Mis à jour le 8 mars 2011  par Thes32

On peut séparer un fichier de son extension en utilisant la fonction pathinfo() qui retourne un tableau associatif, contenant les informations sur le chemin. Les éléments suivants sont retournés : le nom du répertoire (dirname), le nom du fichier (basename) et l'extension (extension).

Exemple :

 
Sélectionnez
$path_parts = pathinfo("/forum/index.php");
echo '<pre>';
print_r($path_parts); // Affiche Array ( [dirname] => /forum [basename] => index.php [extension] => php )
echo '</pre>';
Mis à jour le 5 août 2008  par Forum PHP

Lien : Comment extraire le nom de fichier d'un chemin ?

C'est possible, mais en lecture seulement (pour modifier des fichiers distants, il faut se servir d'un accès ftp et des fonctions PHP prévues pour ce type de connections).

Comment? simplement à l'aide de la fonction fopen() en utilisant l'url comme nom de fichier.

 
Sélectionnez
$file = fopen('http://www.site.com/page.htm', 'r');


Le "r" signifie que le fichier sera ouvert en mode lecture et que le pointeur sera positionné au début du fichier.
$file contient FALSE si le fichier n'a pas pu être ouvert.
Il se peut qu'un fichier ne soit pas disponible lorsqu'on essaie de l'ouvrir, il est donc fortement recommandé de tester la valeur retournée par la fonction fopen(). Pour lire son contenu, il suffit de se servir de la fonction fread() comme on le ferait avec un fichier issu de l'arborescence locale.

Mis à jour le 5 août 2008  par Eric Berger

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2003 Developpez.com Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.