PHP复制文件并使用日期和时间重命名

时间:2014-11-13 10:07:46

标签: php

如何将文件从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);

5 个答案:

答案 0 :(得分:1)

您的$source$destination似乎完全相同,如果您希望将文件复制到其他目的地,则无效。除此之外,您应该使用copy()来复制和移动文件。 rename()只是移动文件而不复制它。

答案 1 :(得分:1)

无需使用重命名

只需简单使用

// Will copy foo/test.php to bar/test.php
// overwritting it if necessary
copy('foo/test.php', 'bar/test.php');

SO ANSWER

答案 2 :(得分:0)

试试这个

<?php
$file = $path.'example.txt';
$newfile = $tpath.'example.txt.bak';

if (!copy($file, $newfile)) {
    echo "failed to copy $file...\n";
}
?>

答案 3 :(得分:0)

我在$ tpath中看到一个空格,你试试

 $tpath = "Data/Results_History/";

答案 4 :(得分:0)

重命名应该有效,检查指定的文件权限和路径是否正确

if(file_exists($dest)){
 rename($dest,$rename);
}else{ 
// File not exists
}