PHP函数封装之文件常用操作

  • A+
所属分类:PHP

文件目录判断

  1. function create_file(string $filename ){
  2.     //检测文件是否存在,不存在则创建
  3.     if (file_exists($filename)){
  4.         return false;
  5.     }
  6.     //检测目录是否存在,不存在则创建
  7.     if (!file_exists(dirname($filename))){
  8.         //创建文件夹、赋予777权限,且可以创建多级
  9.         mkdir(dirname($filename),'0777',true);
  10.     }
  11.     if (touch($filename)){
  12.         return true;
  13.     }
  14.     return false;
  15. }
  16. create_file('a/lee.txt');

 

文件删除

  1. function del_file(string $filename){
  2.     //检测删除的文件是否存在,并判断权限
  3.     if (!file_exists($filename) ||!is_writable($filename)){
  4.         return false;
  5.     }
  6.     if (unlink($filename)){
  7.        return true;
  8.     }
  9.     return false;
  10. }
  11. del_file('a/lee.txt');

 

文件拷贝

  1. function copt_file(string $filename,string $dest){
  2. //检测$dests是否是目标并且这个额目录是否存在,不存在则创建
  3.     if (!is_dir($dest)){
  4.         mkdir($dest,'0777',true);
  5.     }
  6.     //组成目标路径
  7.     //basename,返回路径中的文件名部分
  8.     //DIRECTORY_SEPARATOR,目录分隔符,是定义php的内置常量
  9.     $desName = $dest.DIRECTORY_SEPARATOR.basename($filename);
  10.     //判断这个目录下是否有同名文件
  11.     if (file_exists($desName)){
  12.         return false;
  13.     }
  14.     //拷贝文件(copy(文件名,拷贝到的地址))
  15.     if (copy($filename,$desName)){
  16.         return true;
  17.     }
  18.     return false;
  19. }
  20. copt_file('file_function.php','a');

 

文件重命名

  1. function rename_file(string $oldname,string $newname){
  2.     //检测重命名的文件是否存在,并判断权限
  3.     if (!file_exists($oldname) ||!is_writable($oldname)){
  4.         return false;
  5.     }
  6.     //得到源文件所在的路径
  7.     $path = dirname($oldname);
  8.     $destName =$path.DIRECTORY_SEPARATOR.$newname;
  9.     //判断这个目录下是否有同名文件
  10.     //也可以使用is_file($destNsme), 判断给定文件名是否为一个正常的文件
  11.     if (file_exists($destName)){
  12.         return false;
  13.     }
  14.     //重命名文件(rename(旧名字,新名字))
  15.     if (rename($oldname,$newname)){
  16.         return true;
  17.     }
  18.     return false;
  19. }
  20. rename_file('new.php','a/new2.php');

 

文件剪切

  1. function cut_file(string $filename,string $dest){
  2.     //判断文件是否存在
  3.     if (!is_file($filename)){
  4.         return false;
  5.     }
  6.     //判断目录是否存在,不存在则创建
  7.     if (!is_dir($dest)){
  8.         mkdir($dest,'0777',true);
  9.     }
  10.     //重命名文件判断
  11.     $destName =$dest.DIRECTORY_SEPARATOR.basename($filename);
  12.     if (!is_file($destName)){
  13.         return false;
  14.     }
  15.     //剪切文件(rename(源文件,目标文件))
  16.     if (rename($filename,$destName)){
  17.         return true;
  18.     }
  19.     return false;
  20. }
  21. cut_file('a/new2.php','a/mkdir/');
李金龙

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: