Pumpkin-Man

活到老_学到老!

0%

PHP-操作文件:2020.10.21

使用文件操作的方法,用其他函数,实现 rename 这个函数的功能。

  • 1.仅完成修改文件名的功能

    • 读取 Adge.txt 文件所有内容存入变量 $content,打开一个文件 Law.txt(没有该文件则创建该文件)将变量 $content 写入 Law.txt,删除 Adge.txt 实现重命名文件名

      ("Deleted $file");
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      <?php
      $path="*:/PHPstudy/phpstudy_pro/WWW/work/2020-10-21/Adge.txt";
      $content=file_get_contents($path);
      $fp=fopen("Law.txt", "a") or die("Error");
      fwrite($fp,$content);
      fclose($fp);
      if (!unlink("Adge.txt"))
      {
      echo ("Error deleting $file");
      }
      else
      {
      echo ("Deleted $file");
      }
      ?>

      BkWjQ1.png

  • 2.完成能修改文件夹名的功能。

    • <?php
      header("Content-Type:text/html;charset=utf-8");
      //定义一个复制函数
      function xCopy($src,$dst,$child)
      {
          //判断源目录
          if(!is_dir($src)){
              echo "源目录不存在!";
              return 0;
          }
          //判断目的目录,没有就创建
          if(!is_dir($dst)){
              mkdir($dst);
          }
      
          $handle=opendir($src);
          while($entry=readdir($handle)){
              if(($entry!=".")&&($entry!="..")){
                  if(is_dir($src."/".$entry)){
                      if($child)
                      xCopy($src."/".$entry,$dst."/".$entry,$child);
                  }
                  else{
                      copy($src."/".$entry,$dst."/".$entry);
                  }
      
              }
          }
          return 1;
      }
      $spath="*:/PHPstudy/phpstudy_pro/WWW/work/2020-10-21/LAW";
      $dpath="**:/PHPstudy/phpstudy_pro/WWW/work/2020-10-21/ADGE";
      xCopy($spath,$dpath,1);
      //遍历源目录所有文件,再删除所有文件再删除文件夹
      function remove_dir($dirname){
          if(!is_dir($dirname)){
              echo "源目录不存在!";
              return 0;
          }
          $handl=@opendir($dirname);
          while(($file=@readdir($handl))!==false){
              if($file!=="." && $file!=".."){
                  $dir=$dirname."/".$file;
                  is_dir($dir)?remove_dir($dir):@unlink($dir);
              }
          }
          closedir($handl);
          return rmdir($dirname);
      }
      //删除源文件夹
      $res=remove_dir($spath)
      
      ?>