[PHP文件管理器]①⑥--复制文件

[PHP文件管理器]①⑥--复制文件_第1张图片
Paste_Image.png

修改代码


![](images/copy.png)
else if($act=='copyFile'){
    $str=<<
            将文件复制到:
            
            
            
        
EOF;
    echo $str;
}else if($act=='doCopyFile'){
    $dstname=$_REQUEST['dstname'];
    //echo $dirname."
".$path."/".$dstname; $mes=copyFile($dirname,$path."/".$dstname); alertMes($mes, $redirect); }
function copyFile($filename, $dstname) {
    
    if (file_exists ( $dstname )) {
        if (! file_exists ( $dstname . "/" . basename ( $filename ) )) {
            if (copy ( $filename, $dstname . "/" . basename ( $filename ) )) {
                $mes = "文件复制成功";
            } else {
                $mes = "文件复制失败";
            }
        } else {
            $mes = "存在同名文件";
        }
    } else {
        $mes = "目标目录不存在";
    }
    return $mes;
}

file.func.php

 1024 ) {
        $size /= 1024;
        $i ++;
    }
    return round ( $size, 2 ) . $arr [$i];
}
function createFile($filename) {
    // file/1.txt
    // 验证文件名的合法性,是否包含/,*,<,>,?,|
    $pattern = "/[\/,\*,<>,\?\|]/";
    // basename 返回路径中的文件名部分
    if (! (preg_match ( $pattern, basename ( $filename ) ))) {
        // 检测当前目录下是否存在同名文件
        if (! file_exists ( $filename )) {
            // 通过touch创建
            if (touch ( $filename )) {
                return "创建文件成功";
            } else {
                return "创建文件失败";
            }
        } else {
            return "文件已存在";
        }
    } else {
        return "包含非法字符";
    }
}
function renameFile($oldname, $newname) {
    // 验证文件名是否合法
    if (checkFilename ( $newname )) {
        // 检测当前目录下是否存在同名文件
        $path = dirname ( $oldname );
        if (! file_exists ( $path . "/" . $newname )) {
            // 进行重命名
            if (rename ( $oldname, $path . "/" . $newname )) {
                return "重命名成功";
            } else {
                return "重命名失败";
            }
        } else {
            return "存在同名文件,请重新命名";
        }
    } else {
        return "非法文件名";
    }
}
function checkFilename($filename) {
    // 验证文件名的合法性,是否包含/,*,<,>,?,|
    $pattern = "/[\/,\*,<>,\?\|]/";
    // basename 返回路径中的文件名部分
    if (preg_match ( $pattern, $filename )) {
        return false;
    } else {
        return true;
    }
}
function deleteFile($filename) {
    if (unlink ( $filename )) {
        $mes = "文件删除成功";
    } else {
        $mes = "文件删除失败";
    }
    return $mes;
}
function downFile($filename) {
    header ( "content-disposition:attachment;filename=" . basename ( $filename ) );
    header ( "content-length:" . filesize ( $filename ) );
    readfile ( $filename );
}
function copyFile($filename, $dstname) {
    if (file_exists ( $dstname )) {
        if (! file_exists ( $dstname . "/" . basename ( $filename ) )) {
            if (copy ( $filename, $dstname . "/" . basename ( $filename ) )) {
                $mes = "文件复制成功";
            } else {
                $mes = "文件复制失败";
            }
        } else {
            $mes = "存在同名文件";
        }
    } else {
        $mes = "目标目录不存在";
    }
    return $mes;
}

?>

index.php

";
// echo $filename;

if (! (isset ( $arr ['file'] )) && ! (isset ( $arr ['dir'] ))) {
    echo "";
}

if ($act == '创建文件') {
    $mes = createFile ( $path . "/" . $filename );
    alertMes ( $mes, $redirect );
} else if ($act == 'showContent') {
    // 查看文件内容
    $content = file_get_contents ( $filename );
    if (strlen ( $content )) {
        // textarea能完整显示代码
        // echo "";
        
        // 高亮显示字符创中的PHP代码 true不自动输出(echo)
        $newContent = highlight_string ( $content, true );
        // 高亮显示文件中的PHP代码
        // $content=highlight_file($filename,true);
        
        $str = <<
        
            
                {$newContent}
            
        
    
EOF;
        echo $str;
    } else {
        alertMes ( "文件没有内容,请编辑再查看!", $redirect );
    }
} else if ($act == 'editContent') {
    $content = file_get_contents ( $filename );
    $str = <<
        
        
        
    
EOF;
    echo $str;
} else if ($act == "doEdit") {
    // 修改文件内容的操作
    $content = $_REQUEST ['content'];
    // echo $content;
    if (file_put_contents ( $filename, $content )) {
        $mes = "文件修改成功";
    } else {
        $mes = "文件修改失败";
    }
    alertMes ( $mes, $redirect );
} else if ($act == "renameFile") {
    // 完成重命名
    $str = <<
        请填写新文件名:
            
            
        
EOF;
    echo $str;
} else if ($act == 'doRename') {
    // 实现重命名操作
    $newname = $_REQUEST ['newname'];
    $mes = renameFile ( $filename, $newname );
    alertMes ( $mes, $redirect );
} else if ($act == 'delFile') {
    $mes = deleteFile ( $filename );
    alertMes ( $mes, $redirect );
} else if ($act == 'downFile') {
    // 完成下载的操作
    $mes = downFile ( $filename );
} else if ($act == "copyFolder") {
    $str = <<
    将文件夹复制到:
            
            
            
    
EOF;
    echo $str;
} else if ($act == 'doCopyFolder') {
    $dstname = $_REQUEST ['dstname'];
    
    $mes = copyFolder ( $dirname, $path . "/" . $dstname . "/" . basename ( $dirname ) );
    
    alertMes ( $mes, $redirect );
} else if ($act == 'renameFolder') {
    $str = <<
            请填写新文件夹名称:
            
            
            
        
EOF;
    echo $str;
} else if ($act == 'doRenameFolder') {
    $newname = $_REQUEST ['newname'];
    // imooc222
    // file/aa/imooc1
    // file/aa
    // echo $newname."
".$dirname."
".$path; $mes = renameFolder ( $dirname, $path . "/" . $newname ); alertMes ( $mes, $redirect ); } else if ($act == 'cutFolder') { $str = << 将文件剪切到: EOF; echo $str; } else if ($act == "doCutFolder") { $dstname = $_REQUEST ['dstname']; $mes = cutFolders ( $dirname, $path . "/" . $dstname ); alertMes ( $mes, $redirect ); } else if ($act == "delFolder") { $mes = delFolder ( $dirname ); alertMes ( $mes, $redirect ); } else if ($act == 'copyFile') { $str = << 将文件复制到: EOF; echo $str; } else if ($act == 'doCopyFile') { $dstname = $_REQUEST ['dstname']; // echo $dirname."
".$path."/".$dstname; $mes = copyFile ( $dirname, $path . "/" . $dstname ); alertMes ( $mes, $redirect ); } ?> Insert title here

慕课网-在线文件管理器

alert('没有文件!');"; } } ?> alert('没有目录!');"; } } ?>
编号 名称 类型 大小 可读 可写 可执行 创建时间 修改时间 访问时间 操作
" alt="" class="small" /> | | | | | ![](images/cut.png)| |
" alt="" class="small" /> | | ![](images/copy.png) | | |
[PHP文件管理器]①⑥--复制文件_第2张图片
Paste_Image.png

你可能感兴趣的:([PHP文件管理器]①⑥--复制文件)