php专区

 首页 > php专区 > PHP应用 > php类库 > php中文目录操作类 - php类库

php中文目录操作类 - php类库

分享到:
【字体:
导读:
          下面这个文件操作类可以建立目录,删除目录,删除文件等一系列你能操作操作的功能,代码如下:? ***操纵文件类**例子:*FileUtil::createDir( 39;a 1 2 3 39;);测试建立文件夹建一个a 1 2 3文件夹...

php中文目录操作类

下面这个文件操作类可以建立目录,删除目录,删除文件等一系列你能操作操作的功能,代码如下:

  1. /** 
  2. * 操纵文件类 
  3.  
  4. * 例子: 
  5. * FileUtil::createDir('a/1/2/3');                    测试建立文件夹 建一个a/1/2/3文件夹 
  6. * FileUtil::createFile('b/1/2/3');                    测试建立文件        在b/1/2/文件夹下面建一个3文件 
  7. * FileUtil::createFile('b/1/2/3.exe');             测试建立文件        在b/1/2/文件夹下面建一个3.exe文件 
  8. * FileUtil::copyDir('b','d/e');                    测试复制文件夹 建立一个d/e文件夹,把b文件夹下的内容复制进去 
  9. * FileUtil::copyFile('b/1/2/3.exe','b/b/3.exe'); 测试复制文件        建立一个b/b文件夹,并把b/1/2文件夹中的3.exe文件复制进去 
  10. * FileUtil::moveDir('a/','b/c');                    测试移动文件夹 建立一个b/c文件夹,并把a文件夹下的内容移动进去,并删除a文件夹 
  11. * FileUtil::moveFile('b/1/2/3.exe','b/d/3.exe'); 测试移动文件        建立一个b/d文件夹,并把b/1/2中的3.exe移动进去                    
  12. * FileUtil::unlinkFile('b/d/3.exe');             测试删除文件        删除b/d/3.exe文件 
  13. * FileUtil::unlinkDir('d');                      测试删除文件夹 删除d文件夹 
  14. */ 
  15. class FileUtil { 
  16. /** 
  17.     * 建立文件夹 
  18.     * 
  19.     * @param string $aimUrl 
  20.     * @return viod 
  21.     */ 
  22. function createDir($aimUrl) { 
  23.        $aimUrl = str_replace('''/'$aimUrl); 
  24.        $aimDir = ''
  25.        $arr = explode('/'$aimUrl); 
  26.        foreach ($arr as $str) { 
  27.          $aimDir .= $str . '/'
  28.          if (!file_exists($aimDir)) { 
  29.             mkdir($aimDir); 
  30.          } 
  31.        } 
  32. /** 
  33.     * 建立文件 
  34.     * 
  35.     * @param string $aimUrl  
  36.     * @param boolean $overWrite 该参数控制是否覆盖原文件 
  37.     * @return boolean 
  38.     */ 
  39. function createFile($aimUrl$overWrite = false) { 
  40.        if (file_exists($aimUrl) && $overWrite == false) { 
  41.          return false; 
  42.        } elseif (file_exists($aimUrl) && $overWrite == true) { 
  43.          FileUtil::unlinkFile($aimUrl); 
  44.        } 
  45.        $aimDir = dirname($aimUrl); 
  46.        FileUtil::createDir($aimDir); 
  47.        touch($aimUrl); 
  48.        return true; 
  49. /** 
  50.     * 移动文件夹 
  51.     * 
  52.     * @param string $oldDir 
  53.     * @param string $aimDir 
  54.     * @param boolean $overWrite 该参数控制是否覆盖原文件 
  55.     * @return boolean 
  56.     */ 
  57. function moveDir($oldDir$aimDir$overWrite = false) { 
  58.        $aimDir = str_replace('''/'$aimDir); 
  59.        $aimDir = substr($aimDir, -1) == '/' ? $aimDir : $aimDir . '/'
  60.        $oldDir = str_replace('''/'$oldDir); 
  61.        $oldDir = substr($oldDir, -1) == '/' ? $oldDir : $oldDir . '/'
  62.        if (!is_dir($oldDir)) { 
  63.          return false; 
  64.        } 
  65.        if (!file_exists($aimDir)) { 
  66.          FileUtil::createDir($aimDir); 
  67.        } 
  68.        @$dirHandle = opendir($oldDir); 
  69.        if (!$dirHandle) { 
  70.          return false; 
  71.        } 
  72.        while(false !== ($file = readdir($dirHandle))) { 
  73.          if ($file == '.' || $file == '..') { 
  74.             continue
  75.          } 
  76.          if (!is_dir($oldDir.$file)) { 
  77.             FileUtil::moveFile($oldDir . $file$aimDir . $file$overWrite); 
  78.          } else { 
  79.             FileUtil::moveDir($oldDir . $file$aimDir . $file$overWrite); 
  80.          } 
  81.        } 
  82.        closedir($dirHandle); 
  83.        return rmdir($oldDir); 
  84. /** 
  85.     * 移动文件 
  86.     * 
  87.     * @param string $fileUrl 
  88.     * @param string $aimUrl 
  89.     * @param boolean $overWrite 该参数控制是否覆盖原文件 
  90.     * @return boolean 
  91.     */ 
  92. function moveFile($fileUrl$aimUrl$overWrite = false) { 
  93.        if (!file_exists($fileUrl)) { 
  94.          return false; 
  95.        } 
  96.        if (file_exists($aimUrl) && $overWrite = false) { 
  97.          return false; 
  98.        } elseif (file_exists($aimUrl) && $overWrite = true) { 
  99.          FileUtil::unlinkFile($aimUrl); 
  100.        } 
  101.        $aimDir = dirname($aimUrl); 
  102.        FileUtil::createDir($aimDir); 
  103.        rename($fileUrl$aimUrl); 
  104.        return true; 
  105. /** 
  106.     * 删除文件夹 
  107.     * 
  108.     * @param string $aimDir 
  109.     * @return boolean 
  110.     */ 
  111. function unlinkDir($aimDir) { 
  112.        $aimDir = str_replace('''/'$aimDir); 
  113.        $aimDir = substr($aimDir, -1) == '/' ? $aimDir : $aimDir.'/'
  114.        if (!is_dir($aimDir)) { 
  115.          return false; 
  116.        } 
  117.        $dirHandle = opendir($aimDir); 
  118.        while(false !== ($file = readdir($dirHandle))) { 
  119.          if ($file == '.' || $file == '..') { 
  120.             continue
  121.          } 
  122.          if (!is_dir($aimDir.$file)) { 
  123.             FileUtil::unlinkFile($aimDir . $file); 
  124.          } else { 
  125.             FileUtil::unlinkDir($aimDir . $file); 
  126.          } 
  127.        } 
  128.        closedir($dirHandle); 
  129.        return rmdir($aimDir); 
  130. /** 
  131.     * 删除文件 
  132.     * 
  133.     * @param string $aimUrl 
  134.     * @return boolean 
  135.     */ 
  136. function unlinkFile($aimUrl) { 
  137.        if (file_exists($aimUrl)) { 
  138.          unlink($aimUrl); 
  139.          return true; 
  140.        } else { 
  141.          return false; 
  142.        } 
  143. /** 
  144.     * 复制文件夹 
  145.     * 
  146.     * @param string $oldDir 
  147.     * @param string $aimDir 
  148.     * @param boolean $overWrite 该参数控制是否覆盖原文件 
  149.     * @return boolean 
  150.     */ 
  151. function copyDir($oldDir$aimDir$overWrite = false) { 
  152.        $aimDir = str_replace('''/'$aimDir); 
  153.        $aimDir = substr($aimDir, -1) == '/' ? $aimDir : $aimDir.'/'
  154.        $oldDir = str_replace('''/'$oldDir); 
  155.        $oldDir = substr($oldDir, -1) == '/' ? $oldDir : $oldDir.'/'
  156.        if (!is_dir($oldDir)) { 
  157.          return false; 
  158.        } 
  159.        if (!file_exists($aimDir)) { 
  160.          FileUtil::createDir($aimDir); 
  161.        } 
  162.        $dirHandle = opendir($oldDir); 
  163.        while(false !== ($file = readdir($dirHandle))) { 
  164.          if ($file == '.' || $file == '..') { 
  165.             continue
  166.          } 
  167.          if (!is_dir($oldDir . $file)) { 
  168.             FileUtil::copyFile($oldDir . $file$aimDir . $file$overWrite); 
  169.          } else { 
  170.             FileUtil::copyDir($oldDir . $file$aimDir . $file$overWrite); 
  171.          } 
  172.        } 
  173.        return closedir($dirHandle); 
  174. /** 
  175.     * 复制文件 
  176.     * 
  177.     * @param string $fileUrl 
  178.     * @param string $aimUrl 
  179.     * @param boolean $overWrite 该参数控制是否覆盖原文件 
  180.     * @return boolean 
  181.     */ 
  182. function copyFile($fileUrl$aimUrl$overWrite = false) { 
  183.        if (!file_exists($fileUrl)) { 
  184.          return false; 
  185.        } 
  186.        if (file_exists($aimUrl) && $overWrite == false) { 
  187.          return false; 
  188.        } elseif (file_exists($aimUrl) && $overWrite == true) { 
  189.          FileUtil::unlinkFile($aimUrl); 
  190.        } 
  191.        $aimDir = dirname($aimUrl); 
  192.        FileUtil::createDir($aimDir); 
  193.        copy($fileUrl$aimUrl); 
  194.        return true; 
  195. ?>  
分享到:
PHPExcel用法详细的介绍 - php类库
PHPExcel用法详细的介绍 PHPExcel下载地址:http://phpexcel.codeplex.com/ 导入PHPExcel.php或者其他文件,代码如下: require_once 'PHPExcel.php'; ////require_once'PHPExcel/Writer/Excel5.php';     // 用于其他低版本xls   // or  ////requi...
php树型菜单类 - php类库
php树型菜单类 原理简单,学过数据结构的一看就明白是什么道理了,不过今天在使用时数据中出现了子节点id(71)小于父节点id(104).导致部分子节点没被存储入数组,修改了一下,实例代码如下:  
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……