课程名称:WEB在线文件管理器
课程章节:第2章 PHP文件夹操作
主讲老师:king
课程内容:
今天学习的内容包括:
2-4 复制文件夹
2-5 rename()实现重命名文件夹
2-6 rename()实现剪切文件夹
课程收获:
检测文件夹名称的合法性函数的封装 重命名文件夹函数的封装 剪切文件夹函数的封装
function createFolder($dirname){ //检测文件夹名称的合法性 if(checkFilename(basename($dirname))){ //当前目录下是否存在同名文件夹名称 if(!file_exists($dirname)){ if(mkdir($dirname,0777,true)){ $mes="文件夹创建成功"; }else{ $mes="文件夹创建失败"; } }else{ $mes="存在相同文件夹名称"; } }else{ $mes="非法文件夹名称"; } return $mes; } /** * 重命名文件夹 * @param string $oldname * @param string $newname * @return string */ function renameFolder($oldname,$newname){ //检测文件夹名称的合法性 if(checkFilename(basename($newname))){ //检测当前目录下是否存在同名文件夹名称 if(!file_exists($newname)){ if(rename($oldname,$newname)){ $mes="重命名成功"; }else{ $mes="重命名失败"; } }else{ $mes="存在同名文件夹"; } }else{ $mes="非法文件夹名称"; } return $mes; } function copyFolder($src,$dst){ //echo $src,"---",$dst."----"; if(!file_exists($dst)){ mkdir($dst,0777,true); } $handle=opendir($src); while(($item=readdir($handle))!==false){ if($item!="."&&$item!=".."){ if(is_file($src."/".$item)){ copy($src."/".$item,$dst."/".$item); } if(is_dir($src."/".$item)){ $func=__FUNCTION__; $func($src."/".$item,$dst."/".$item); } } } closedir($handle); return "复制成功"; } /** * 剪切文件夹 * @param string $src * @param string $dst * @return string */ function cutFolder($src,$dst){ //echo $src,"--",$dst; if(file_exists($dst)){ if(is_dir($dst)){ if(!file_exists($dst."/".basename($src))){ if(rename($src,$dst."/".basename($src))){ $mes="剪切成功"; }else{ $mes="剪切失败"; } }else{ $mes="存在同名文件夹"; } }else{ $mes="不是一个文件夹"; } }else{ $mes="目标文件夹不存在"; } return $mes; }