php文件复制升级

1.根据时间备份

2.同一秒不能有重复

 1 <?php
 2 function recurse_copy($src,$dst) {  // 原目录,复制到的目录
 3     //打开源目录
 4     $dir = opendir($src);
 5     //创建目标目录
 6     @mkdir($dst);
 7     //读取目录下的所有文件名称
 8     while(( $file = readdir($dir))!==false ) {
 9         //判断文件名称是否合法
10         if (( $file != '.' ) && ( $file != '..' )) {
11             if ( is_dir($src . '/' . $file) ) {
12                 recurse_copy($src . '/' . $file,$dst . '/' . $file);
13             }
14             else {
15                 copy($src . '/' . $file,$dst . '/' . $file);
16             }
17         }
18     }
19     closedir($dir);
20     return true;
21 }
22 # 接收原文件名称
23 $src=$_POST['src'];
24 # 复制到什么文件
25 $dst=$_POST['dst'];
26 # 获得当前时间
27 $date=date("Y-m-j G:i:s");
28 # 判断该文件夹是否存在/如果存在则是重复了,同一秒不可能重复
29 if(file_exists("/var/www/php-poject/$dst-$date")){
30    echo "No restart<br />";
31 }else{
32    # 否则复制文件
33    if(recurse_copy("/var/www/php-poject/$src","/var/www/php-poject/$dst-$date")){
34      echo "backup ok<br />";
35    }
36 }
37 ?>

提交的表单:

<form action="recurse_copy.php" method="post" >
  <input name="src" type="text">
  <input name="dst" type="text">
  <input type="submit" value="Submit" />
</form>

 

你可能感兴趣的:(php文件复制升级)