8791 sujets

Développement web côté serveur, CMS

Bonjour à tous,

Voilà je voudrais copier/coller un dossier en PHP, ce dossier "cms" à copier/coller se trouve sur le serveur et il doit être copier/coller vers un dossier "$dossier" présent sur le serveur.

Sachant que dans mon dossier "cms" il y a plusieurs sous-dossiers et plusieurs fichiers...

J'ai trouvé aucunes fonctions valables sur Google.

Auriez-vous une solution ? C'est peut être pas possible... ?

Anthony
Bonjour,


il faut que tu fasses une fonction récursive qui copie tous les dossiers et fichiers un à un (il y en à de déjà faite dans les commentaire de la doc de copy)

sinon tu peux passer par une fonction système du type

exec('cp -R '. $sourcePath .' '. $destPath);
Ça n'a pas l'air de marché avec "exec"... Je travaille en local, c'est peut être la cause.

Sinon je vais essayer avec les fonctions écrites dans les commentaires de la fonction "copy".
tonymx15 a écrit :
Ça n'a pas l'air de marché avec "exec"… Je travaille en local, c'est peut être la cause.


A oui j'ai oublier de préciser, "cp" ne marche que sur une base unix.
Modifié par bilhackmac (02 Feb 2011 - 20:36)
Oui en effet car je vois que ça marche sur le MAC mais pas sur PC...

Il n'existe pas un compromis ? Car "exec" me copie parfaitement le dossier à l'endroit désirer et le tout en deux lignes... J'ai pas encore trouvé une fonction qui marche comme il faut.
exec ne fait qu'envoyer une commande système, et a de nombreux amis qui peuvent sembler équivalent (shell_exec, guillemets obliques).

C'est la fonction système qui compte ici (dans l'exemple, cp). Sous windows, il doit exister une commande pour copier des fichiers et/ou des dossiers récursivement (maybe "copy" ?).

Sinon, comme dit plus haut : fonction récursive. Pas très difficile, soit dit en passant, via scandir.
Modifié par Lpu8er (03 Feb 2011 - 12:05)