如何运用php函数mkdir创建多级目录_PHP教程

原创
2016-07-15 13:30:23 798浏览

当我们想在自己的网站上添加多级目录时,可以使用php函数mkdir参数与描述

path 必需。规定要创建的目录的名称。
mode 必需。规定权限。默认是 0777。
recursive 必需。规定是否设置递归模式。
context 必需。规定文件句柄的环境。Context 是可修改流的行为的一套选项。

说明

php函数mkdir 尝试新建一个由 path 指定的目录。

默认的 mode 是 0777,意味着最大可能的访问权。

php默认的mkdir一次只能创建一层目录,如果在当前目录下创建一个div/css/layout 的目录就需要逐层逐层的先创建div,再创建div/css 再创建 div/css/layout,然而我们希望能让程序自动帮我们完成这个过程。

其实思路也很简单,1.先判断 div目录是否存在,不存在则创建;2.判断子目录 div/css 是否存在,不能存在则创建,3.在第二步中以子目录作为参数递归调用函数本身。也可以按相反顺序来,1.先判断最底层目录div/css/layout是否存在;2.判断div/css/layout的上层目录div/css是否存在,不存在则以div/css作为参数递归进行。。

下面是php函数mkdir的程序代码:

  1. function mkdirs($dir)
  2. {
  3. if(!is_dir($dir))
  4. {
  5. if(!mkdirs(dirname($dir))){
  6. return false;
  7. }
  8. if(!mkdir($dir,0777)){
  9. return false;
  10. }
  11. }
  12. return true;
  13. }
  14. mkdirs('div/css/layout');
  15. 同样的思路,php用rmdir和unlink递归删除多级目录的代码:
  16. function rmdirs($dir)
  17. {
  18. $d = dir($dir);
  19. while (false !== ($child = $d->read())){
  20. if($child != '.' && $child != '..'){
  21. if(is_dir($dir.'//m.sbmmt.com/m/'.$child))
  22. rmdirs($dir.'//m.sbmmt.com/m/'.$child);
  23. else unlink($dir.'//m.sbmmt.com/m/'.$child);
  24. }
  25. }
  26. $d->close();
  27. rmdir($dir);
  28. }

以上代码示例就是php函数mkdir实现创建多级目录的具体方法。


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/446279.htmlTechArticle当我们想在自己的网站上添加多级目录时,可以使用 php函数mkdir参数与描述 path 必需。规定要创建的目录的名称。 mode 必需。规定权限。默...
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。