递归创建目录

 1 <?php
 2     function mk_dir($path){
 3         if(is_dir($path)){
 4             return true;
 5         }
 6         if(is_dir(dirname($path)) || mk_dir(dirname($path))){
 7             mkdir($path);
 8         }
 9
10     }
11
12     mk_dir(‘G:/phpstudy/WWW/yanshiba/quan/a/b/c/d/e/f‘);
13
14
15 ?>

6行中,最后调用mk_dir时,is_dir()是为创建mkdir使用的,此时$path是有目录了,然后is_dir()判断后返回true,mk_dir收到立马从开始从后面往前面执行,又mkdir(),逐步创建目录,此为递归

时间: 2024-08-11 00:58:47

递归创建目录的相关文章

mkdir递归创建目录

mkdir递归创建目录 rmdir递归删除目录 -p:父目录为空时,一并进行创建-v:命令执行结果可视化mkdir -pv /tmp/x/y/zrmdir -p /tmp/x/y/z mkdir -pv {a,b}_{c,d}

php递归创建目录

/** * 递归创建目录 * @param [string] $path [创建的目录] * @return [type] [description] */ function mk_Dir($path){ // 如果目录存在返回 ture if(is_dir($path)){ return true; } // 如果上级目录存在 创建目录 if(is_dir(dirname($path))){ return mkdir($path); } // 递归 查找父目录 mk_Dir(dirname($

lua中清空目录和递归创建目录

lua中的 lfs.mkdir lfs.rmdir只能针对单个目录,且lfs.rmdir不能清空文件夹 于是我想到了使用os.execute 递归创建目录如下os.execute("mkdir ooxx\\ooxx\\ooxx\\ooxx) --windowsos.execute("mkdir -p ooxx/ooxx/ooxx) --unix,linux like 清空目录如下os.execute("del ooxx\) --windowsos.execute("

php之递归调用,递归创建目录

/* 递归自身调用自身,每次调用把问题简化,直到问题解决 即:把大的任务拆成相同性质的多个小任务完成 */ /* function recsum($n){ if($n>1){ return $n + recsum($n-1); }else{ return 1; } } //递归调用 echo recsum(10).'<br />'; */ //最先调用,最后返回 //递归:一个函数,自身调用自身,必有终止条件 function sum($n){ if($n>1){ echo $n.

递归创建目录与删除目录

递归创建级联目录,递归删除级联目录,例如:./a/b/c/d/e <?php //递归创建目录 function mk_dir($path){ //判断目录是否存在 if(is_dir($path)){ return true; } //如果父目录存在,则直接创建 if(is_dir(dirname($path))){ mkdir($path); return true; } //如果父目录不存在,则递归 mk_dir(dirname($path)); //父目录已存在,则返回创建该子目录 re

mkdirp——递归创建目录及其子目录

如果要创建目录A并创建目录A的子目录B,没有用-p参数的情况下mkdir会逐个创建目录(mkdir A; mkdir A/B); 加上参数-p就可以直接创建2个目录mkdir -p A/B( 如果目录A 不存在就创建) mkdirp命令是npm的包,可以代替mkdir -p操作. intall: npm install mkdirp 或 npm install -g mkdirp 使用:mkdirp(dir, opts, cb); var mkdirp = require('mkdirp');

利用php函数mkdir递归创建层级目录

项目开发中免不了要在服务器上创建文件夹,比如上传图片时的目录,模板解析时的目录等.这不当前手下的项目就用到了这个,于是总结了几个循环创建层级目录的方法. php默认的mkdir一次只能创建一层目录,而要逐层创建各级目录的话,一般都是先从父创建,然后逐层往下创建,但是这样手工创建的话,有点太过于麻烦了. 我们写程序是做什么的?不久是为了能自动化实现我们需要的功能么,这里的方法就是为了能够通过程序帮我们自动创建完成层级目录. Ruesin.com 思路有两种: 一.从上往下(父级→子级) 1.先判断

每天学习一个LINUX命令:mkdir 创建目录文件夹(make directory 做活动目录)

linux mkdir 命令用来创建指定的名称的目录,要求创建目录的用户在当前目录中具有写权限,并且指定的目录名不能是当前目录中已有的目录. 语法参数: mkdir [参数] [目录名] 参数: -m --mode=模式,设定权限<模式> (类似 chmod),而不是 rwxrwxrwx 减 umask-p --parents 递归创建目录-v, --verbose 每次创建新目录都显示信息 用法实例: 创建一个空目录 mkdir abc1 创建多个空目录 mkdir 11 22 33 44

递归创建、删除目录的几个函数

递归创建目录1: 需要#include <shlwapi.h>,并且配置好shlwapi.ib BOOL CreateDirTree( LPCTSTR lpPath ) { if( NULL == lpPath || _tcslen(lpPath)==0 ) { return FALSE; } if( ::PathFileExists( lpPath) || ::PathIsRoot(lpPath) ) return TRUE; TCHAR szParentpath[MAX_PATH] = _