Supposons que j'ai un fichier test.php
dans le répertoire foo
ainsi que bar
. Comment remplacer bar/test.php
par foo/test.php
en utilisant PHP
? Je suis sur Windows XP, une solution multi-plateforme serait bien mais Windows préféré.
Vous pouvez utiliser la fonction copy()
:
// Will copy foo/test.php to bar/test.php
// overwritting it if necessary
copy('foo/test.php', 'bar/test.php');
Citant quelques phrases pertinentes de sa page de manuel:
Effectue une copie du fichier source vers dest.
Si le fichier de destination existe déjà, il sera écrasé.
Vous pouvez utiliser la fonction rename () :
rename('foo/test.php', 'bar/test.php');
Ceci va cependant déplacer le fichier ne pas copier
copie le fera. Veuillez vérifier le php-manual . Une simple recherche sur Google devrait répondre à vos deux dernières questions;)
Le meilleur moyen de copier tous les fichiers d’un dossier à un autre en utilisant PHP
<?php
$src = "/home/www/example.com/source/folders/123456"; // source folder or file
$dest = "/home/www/example.com/test/123456"; // destination folder or file
Shell_exec("cp -r $src $dest");
echo "<H2>Copy files completed!</H2>"; //output when done
?>
Vous pouvez copier et coller cela vous aidera
<?php
$file = '/test1/example.txt';
$newfile = '/test2/example.txt';
if(!copy($file,$newfile))
{
echo "failed to copy $file";
}
else
{
echo "copied $file into $newfile\n";
}
?>`
Si vous souhaitez copier plusieurs ou (fichiers illimités) visitez le lien: http://www.phpkida.com/php-tutorial/copy-multiple-files-from-one-folder-to -another-php/
Salut les gars voulaient aussi ajouter comment copier en utilisant un copier/coller dynamique.
disons que nous ne connaissons pas le dossier que l'utilisateur va créer, mais nous savons que dans ce dossier, nous avons besoin de copier les fichiers pour activer certaines fonctions telles que la suppression, la mise à jour, les vues, etc.
vous pouvez utiliser quelque chose comme ceci ... J'ai utilisé ce code dans l'un des projets complexes sur lesquels je suis actuellement occupé. Je viens de le construire moi-même parce que toutes les réponses que j'ai eues sur Internet me donnaient une erreur.
$dirPath1 = "users/$uniqueID"; #creating main folder and where $uniqueID will be called by a database when a user login.
$result = mkdir($dirPath1, 0755);
$dirPath2 = "users/$uniqueID/profile"; #sub folder
$result = mkdir($dirPath2, 0755);
$dirPath3 = "users/$uniqueID/images"; #sub folder
$result = mkdir($dirPath3, 0755);
$dirPath4 = "users/$uniqueID/uploads";#sub folder
$result = mkdir($dirPath4, 0755);
@copy('blank/dashboard.php', 'users/'.$uniqueID.'/dashboard.php');#from blank folder to dynamic user created folder
@copy('blank/views.php', 'users/'.$uniqueID.'/views.php'); #from blank folder to dynamic user created folder
@copy('blank/upload.php', 'users/'.$uniqueID.'/upload.php'); #from blank folder to dynamic user created folder
@copy('blank/delete.php', 'users/'.$uniqueID.'/delete.php'); #from blank folder to dynamic user created folder
Je pense que Facebook ou Twitter utilise quelque chose comme ceci pour créer chaque tableau de bord dynamique des nouveaux utilisateurs ....
Vous pouvez utiliser à la fois rename () et copy ().
J'ai tendance à préférer utiliser renommer si je n'ai plus besoin que le fichier source reste à son emplacement.