PHP复制文件并使用日期和时间重命名
如何将文件从PHP复制文件并使用日期和时间重命名,php,Php,如何将文件从Data/Results/result.txt复制并重命名为Data/ResultsHistory/2014-11-13-12-00_result.txt?我的代码不起作用 $path = "Data/Results/"; // Upload directory $tpath = "Data/Results History/"; // Upload to History Folder $name = "result.txt"; $sou
Data/Results/result.txt
复制并重命名为Data/Results
History/2014-11-13-12-00_result.txt
?我的代码不起作用
$path = "Data/Results/"; // Upload directory
$tpath = "Data/Results History/"; // Upload to History Folder
$name = "result.txt";
$source = $path.$name;
$today = date("d-m-Y");
$time = date("H-i-s");
$newname = $today."_".$time."_".$name;
$dest = $tpath.$name;
copy($source,$dest);
$rename = $tpath.$newname;
rename($dest,$rename);
您的
$source
和$destination
似乎完全相同,如果您希望将文件复制到另一个目标,这将不起作用。除此之外,您还应该使用copy()
来复制和移动文件rename()
只需移动文件而不复制它。无需使用rename
只是简单的使用
// Will copy foo/test.php to bar/test.php
// overwritting it if necessary
copy('foo/test.php', 'bar/test.php');
试试这个
<?php
$file = $path.'example.txt';
$newfile = $tpath.'example.txt.bak';
if (!copy($file, $newfile)) {
echo "failed to copy $file...\n";
}
?>
我在你的$tpath中看到一个空格,你试过了吗
$tpath = "Data/Results_History/";
重命名应起作用,请检查指定的文件权限和路径是否正确
if(file_exists($dest)){
rename($dest,$rename);
}else{
// File not exists
}
返回的错误是什么?还要检查目标folderuse file_put_contents()的权限,但您是从uploader获取此文件的吗?