下面是要创建的文件目录数组格式-$forderlist:     

array(
  0=>array(
        "cate_name"=>"分类1",
        "foldername"=>"CKJS",
        "sonfolder"=>array(
                  0=>array(
                        "cate_name"=>"分类1_1",
                        "foldername"=>"CKZT"
                        ),
                  1=>array(
                        "cate_name"=>"分类1_2",
                        "foldername"=>"CKCT"
                        )
                  )
       ),
  1=>array(
        "cate_name"=>"分类2",
        "foldername"=>"YYZK",
        "sonfolder"=>array(
                  0=>array(
                        "cate_name"=>"分类2_1",
                        "foldername"=>"FWQY"
                        ),
                  1=>array(
                        "cate_name"=>"分类2_2",
                        "foldername"=>"GSRY"
                        ),
                  2=>array(
                        "cate_name"=>"分类2_3",
                        "foldername"=>"Others"
                       )
                  )
      ),
  2=>array(
        "cate_name"=>"分类3",
        "foldername"=>"SBZK",
        "sonfolder"=>array(
                  0=>array(
                        "cate_name"=>"分类3_1",
                        "foldername"=>"CKSB"
                        ),
                  1=>array(
                        "cate_name"=>"分类3_2",
                        "foldername"=>"CLSB"
                         ),
                  2=>array(
                        "cate_name"=>"分类3_3",
                        "foldername"=>"FDSB"
                        ),
                  3=>array(
                        "cate_name"=>"分类3_4",
                        "foldername"=>"XFSB"
                        )
                  )
       ),
  3=>array(
        "cate_name"=>"分类_4",
        "foldername"=>"QYYS"
        ),
  4=>array(
        "cate_name"=>"分类5",
        "foldername"=>"RYJS",
        "sonfolder"=>array(
                  0=>array(
                        "cate_name"=>"分类5_1",
                        "foldername"=>"GSJG"
                       ),
                  1=>array(
                        "cate_name"=>"分类5_2",
                        "foldername"=>"YGZP"
                        )
                  )
       ),
  5=>array(
        "cate_name"=>"分类6",
        "foldername"=>"XTBB",
        "sonfolder"=>array(
                  0=>array(
                       "cate_name"=>"分类6_1",
                       "foldername"=>"GLYY"
                       ),
                  1=>array(
                       "cate_name"=>"分类6_2",
                       "foldername"=>"XTYY"
                       ),
                  2=>array(
                       "cate_name"=>"分类6_3",
                       "foldername"=>"SOP"
                       ),
                  3=>array(
                       "cate_name"=>"分类6_4",
                       "foldername"=>"KPI"
                       )
                  )
       )
  )

下面是递归创建多级文件目录函数:

function create_forder_list($forderlist,$cate_forder_path,$i)
{
  $parent_id=mysql_insert_id();
  foreach($forderlist as $k=>$v)
  {
    $sqlstr="insert into ".DB_PRE."uppic_cate(cate_name,cate_parentid,foldername,level,cate_forder_path)                   

    values('".$v["cate_name"]."','".$parent_id."','".$v["foldername"]."','".($i+1)."','".$cate_forder_path.'/'.$v["foldername"]."')";

    $GLOBALS['mysql']->query($sqlstr);
    @mkdir(CMS_PATH.$cate_forder_path.'/'.$v["foldername"]);
    if(isset($v["sonfolder"]))
    {
      create_forder_list($v["sonfolder"],$cate_forder_path.'/'.$v["foldername"],$i+1);
    }
  }
}

附注:$forderlist是上面的文件目录数组,$cate_forder_path是当前文件目录的父目录路径,$i是当前文件目录的层数

转载于:https://www.cnblogs.com/runong/p/3578391.html

递归创建多级文件目录(PHP)相关推荐

  1. PHP递归创建多级目录(一道面试题的解题过程)

    今天看到一道面试题,要写出一个可以创建多级目录的函数: 我的第一个感觉就是用递归创建,具体思路如下: function Directory($dir){ if(is_dir($dir) || @mkd ...

  2. php 从根目录 开始创建,php创建多级目录的方法

    php创建多级目录的方法 本文实例讲述了php创建多级目录的方法.分享给大家供大家参考.具体实现方法如下: /* 写出一个能创建多级目录的PHP函数 */ function createdirlist ...

  3. (47)fs创建多级目录

    一.fs创建多级目录说明 fs.mkdir('./a/b/c') 这样写可以不可以呢? 答案:不可以. 多级目录的创建方式:一般使用递归的方式进行创建. 如何操作? 先创建./a 再创建./a/b 最 ...

  4. linux 创建多级目录

    在linux在如果创建目录的中间路径不存在,则会创建失败,下面给一份创建多级目录的代码. 递归: #include "stdio.h" #include "string. ...

  5. 递归遍历ftp文件目录,并生成目录树

    首先树结构: public class TreeVo {private String label;private List<TreeVo> children;public TreeVo() ...

  6. Node.js复制/删除服务器端文件到指定目录文件夹下,并且预判是否存在该目录,如果没有,则递归创建该文件夹目录

    注意,前情提示: 本代码基于<Node.js(nodejs)对本地JSON文件进行增.删.改.查操作(轻车熟路)> 传送门Node.js(nodejs)对本地JSON文件进行增.删.改.查 ...

  7. php创建多级目录完整封装类操作

    创建多级目录函数中调用创建指定下的指定文件的函数: public function create_dir($dir,$mode=0777){return is_dir($dir) or ($this- ...

  8. 【数据挖掘】决策树算法简介 ( 决策树模型 | 模型示例 | 决策树算法性能要求 | 递归创建决策树 | 树根属性选择 )

    文章目录 I . 决策树模型 II . 决策树模型 示例 III . 决策树算法列举 IV . 决策树算法 示例 V . 决策树算法性能要求 VI . 决策树模型创建 ( 递归创建决策树 ) VII ...

  9. Eclipse 批量创建多级文件夹

    Eclipse 批量创建多级文件夹 CreateTime--2018年3月8日08:23:24 Author:Marydon 1.选中要建立文件夹的父级目录-->右键-->New--> ...

最新文章

  1. python中bytearray和java中byte[]的区别_Python经典面试题:说说Python中xrange和range的区别?...
  2. 比较双曲正切tanh与sigmoid激活函数的性能差异
  3. 在51CTO安了家。。。。
  4. 51 nod 1521 一维战舰 时间复杂度O(n),同 Codeforces 567D. One-Dimensional Battle Ships 有详细注释
  5. 如何在Eclipse中显示行号
  6. Java银行开户,取钱,存钱,查询余额,退出。。。。。
  7. 使用jdk压缩war包
  8. webworker应用场景_典型应用场景 · OpenResty最佳实践-最新版 · 看云
  9. ffmpeg rtp传输使用
  10. 零经验程序员如何抢占面试机会?
  11. HDU 1181.变形课-并查集
  12. java.lang.ClassNotFoundException: net.sf.json.JSONObject
  13. 勤哲excel与oracle集成,勤哲Excel服务器-学习与下载园地
  14. DP1363F与CLRC663的兼容性对比区别
  15. 【蓝屏解决】笔记本频繁蓝屏,错误代码IRQL_NOT_LESS_OR_EQUAL
  16. 织梦登陆总是提示验证码错误
  17. 九鼎无双一面面经【凉】
  18. 低代码和零代码火了,十大利器推荐
  19. 2021-5-25-今日收获
  20. ruoyi-cloud 服务器端idea启动报错Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.6.0:exec (defau

热门文章

  1. java的字符串池_翻译-Java字符串池
  2. git上传项目 openssh_GitHub上传项目
  3. mongodb教程_MongoDB教程
  4. kotlin button_使用Kotlin和XML的Android Button
  5. 渴望整成“卡戴珊” 澳大利亚年轻女性以整容为荣
  6. android压缩图片,并将其转化成base64提交到服务器
  7. oracle 体系结构初步认识(一)
  8. IEnumerable 和 IEnumerator
  9. SQL Server 修改表
  10. 判断鼠标向右或向左滑动,响应不同的事件