只关心我所关心的,不在意我所不在意的 Register | Login

快速生成目录树

首页 > PHP >

网页开发时,很多时候都会遇到生成目录树的问题,系统自带的mkdir仅仅只能生成单个目录,当面对“abc/def/ghi/jkl/”这样的路径时,就没有办法了。这时候,可以利用一个简单的递归,同时调用PHP自带函数dirname,就可以很方便的生成目录树

PHP代码
  1. <?php   
  2.   
  3.     function mkdirs($path , $mode = 0755 ){   
  4.         if(!is_dir($path)){   
  5.             mkdirs(dirname($path),$mode);   
  6.             mkdir($path,$mode);   
  7.         }   
  8.         return true;   
  9.     }  

这样就比较方便的生成一个目录树了,该函数主要用于:1、生成缓存目录,2、生成静态文件目录,3、生成上传文件目录。

其它地方用的并不是很多



本站采用创作共享版权协议, 要求署名、非商业和保持一致. 本站欢迎任何非商业应用的转载, 但须注明出自"膘叔", 保留原始链接, 此外还必须标注原文标题和链接.

Tags: php, 目录树, mkdir

« 上一篇 | 下一篇 »

只显示10条记录相关文章

PHP sendmail (浏览: 10246, 评论: 6)
PHP中Eval的作用 (浏览: 8748, 评论: 3)
利用array_diff函数更新tag (浏览: 8620, 评论: 1)
PHP常见错误(二) (浏览: 8400, 评论: 1)
PHP中的Cache (浏览: 8359, 评论: 7)
JpGraph中文乱码完美解决方案[转] (浏览: 6848, 评论: 1)
好不要脸的说明 (浏览: 6696, 评论: 3)
PHP连贯接口 (浏览: 6537, 评论: 2)
Easy way to find a file in subdirectory with php (浏览: 5824, 评论: 0)
关于Imagick的使用 (浏览: 5799, 评论: 1)
快速生成目录树 - PHP,php,目录树,mkdir,gouki,简单人生|PHP开发|架构研究 网页开发时,

6条记录访客评论

在你之前的回复中我已经注明,我是被PHP4害了。
当然,好象试过,在linux下面如果是0600的时候,是不能递归生成的(前提是,我不记得我的apache是用哪个用户的了,可能是www-data用户吧?反正利用系统自带的没有生成成功)
具体环境已经无法重现。只能安慰一下自己可能是RP不够好吧。

Post by gouki on 2009, August 5, 10:24 PM 引用此文发表评论 #1

mkdir(\'abc/def/ghi/jkl/\') 这样不是也能直接生成的么,膘哥。

Post by jimmy on 2009, August 5, 1:43 PM 引用此文发表评论 #2

mkdir('abc/def/ghi/jkl/') 这样不是也能直接生成的么,膘哥。

Post by jimmy on 2009, August 5, 1:40 PM 引用此文发表评论 #3

我又被PHP4害了。。。

Post by gouki on 2008, November 5, 2:21 PM 引用此文发表评论 #4

php的mkdir支持递归生成的.
mkdir($path,$mode,true);

Post by 懒宝宝 on 2008, November 5, 10:59 AM 引用此文发表评论 #5

已经将你的函数进行了改进。支持相对/绝对目录的批量创建。详见
http://www.haixiait.com/article.asp?id=196

谢谢你。

Post by airzen on 2008, June 26, 11:49 AM 引用此文发表评论 #6


发表评论

评论内容 (必填):