# Déplacer un fichier avec PHP



## Anonyme (2 Mars 2005)

Encore moi et oui ....    
Mon script génére un fichier, mais je voudrais le déplacer dans un dossiers, mais je ne sait pas si c'est possible ... est-ce que ça l'est ?


----------



## Eddyrun (2 Mars 2005)

Vince71 a dit:
			
		

> Encore moi et oui ....
> Mon script génére un fichier, mais je voudrais le déplacer dans un dossiers, mais je ne sait pas si c'est possible ... est-ce que ça l'est ?




On peut deplacer un fichier en php avec la fonction rename :

 rename("/tmp/tmp_file.txt", "/home/user/login/docs/my_file.txt");

(extrait de la doc php)

HTH,
Eddy


----------



## elbibos (2 Mars 2005)

Salut,

Ben ton script qui génère un fichier, tu peux pas lui spécifier l'emplacement où il le génère ?:mouais:
A priori ça me semblerait plus simple que de faire ça en deux temps, d'abord la création, puis le déplacement... :hein:
Non ?... 
Tu peux peut-être nous mettre ton script histoire de voir de plus près.


----------



## Anonyme (2 Mars 2005)

Justement pour le créer, j'utilise touch(nomdufichier); mais nul part je peut mettre l'endroit où je veux qu'il soit ( enfin je crois )

merci de m'aider


----------



## elbibos (2 Mars 2005)

Ben il doit falloir bidouiller un peu ton script pour lui rajouter une fonction spécifiant le dossier de destination je pense.


----------



## Eddyrun (2 Mars 2005)

Vince71 a dit:
			
		

> Justement pour le créer, j'utilise touch(nomdufichier); mais nul part je peut mettre l'endroit où je veux qu'il soit ( enfin je crois )



touch("./repertoire/fichier")  doit créer le fichier dans le sous repertoire donné en parametre, je pense ?

Eddy


----------



## Anonyme (2 Mars 2005)

Non ça ne marche pas, ça créer juste un autre fichier  0


----------



## molgow (2 Mars 2005)

Eddyrun a dit:
			
		

> touch("./repertoire/fichier") doit créer le fichier dans le sous repertoire donné en parametre, je pense ?



Oui c'est bien le cas.

Vince71: tu dois faire un touch(_chemin d'accès jusqu'à ton nouveau fichier_).


----------



## Anonyme (3 Mars 2005)

touch("articles/$page");
Cela créer un fichier dans mon dossier articles et dans le dossier où se trouve le srcipt qui contient touch(). Faut il que je fasse l'un script qui supprime un des deux ?

touch("articles"/$page);
Cette posibilitée crée un fichier dans le même répertoire que le fichier avec touch() et un autre dans le même endroit appelé 0.


----------



## molgow (3 Mars 2005)

Vince71 a dit:
			
		

> touch("articles"/$page);



La concaténation de chaînes de caractères se fait avec l'opérateur "." en PHP :
_
 touch("articles/" . $page); _


----------



## Anonyme (3 Mars 2005)

à oui c'est vrai ... j'y avais pas pensé  
merci !


----------



## Anonyme (4 Mars 2005)

Toujours pas : 

/* creation du fichier */
touch("articles/" . $page);

Un fichier dans le dossier articles et un autre dans le dossier où j'ai mon touch(). Doit je opté pour une fonction qui supprime celui en trop, ce qui résoudré le probléme ?


----------



## Ubique (17 Juin 2005)

A ce propos, j'ai un problème de création de fichier dès lors que je l'enregistre dans un dossier créé pour l'occasion qui se trouve pourtant dans l'arborescence du site.
Si je mets touch("fichier.txt") il n'y a pas de problème. En revanche, si je mets touch("dossier/fichier.txt"), cela ne marche pas. Il ne se passe rien !   

Une solution ?


----------

