Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/259.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP复制文件并使用日期和时间重命名_Php - Fatal编程技术网

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获取此文件的吗?