具体步骤:

A.在build.php中按照实际需求修改定义模块的内容;

B.修改Public/index.php,在代码中加入:

// 读取自动生成定义文件
$build = include '/../build.php';
// 运行自动生成
\think\Build::run($build,'test',true);

C.运行localhost/项目名称/public/index.php

成功!

1.首先需要定义一个用于自动生成的规则定义文件,通常命名为build.php

默认的框架的根目录下面自带了一个build.php示例参考文件,内容如下:

return [
// 生成运行时目录
'__file__' => ['common.php'], // 定义index模块的自动生成
'index' => [
'__file__' => ['common.php'],
'__dir__' => ['behavior', 'controller', 'model', 'view'],
'controller' => ['Index', 'Test', 'UserType'],
'model' => [],
'view' => ['index/index'],
],
// 。。。 其他更多的模块定义
];

可以给每个模块定义需要自动生成的文件和目录,以及MVC类。

  • __dir__ 表示生成目录(支持多级目录)
  • __file__ 表示生成文件(不定义默认会生成 config.php 文件)
  • controller 表示生成controller类
  • model表示生成model类
  • view表示生成html文件(支持子目录)

自动生成以APP_PATH为起始目录,__dir__ 和 __file__ 表示需要自动创建目录和文件,其他的则表示为模块自动生成。

模块的自动生成则以 APP_PATH.'模块名/' 为起始目录。

并且会自动生成模块的默认的Index访问控制器文件用于显示框架的欢迎页面。

我们还可以在APP_PATH目录下面自动生成其它的文件和目录,或者增加多个模块的自动生成,例如:

return [
'__file__' => ['hello.php','test.php'],
// 定义index模块的自动生成
'index' => [
'__file__' => ['tags.php', 'user.php', 'hello.php'],
'__dir__' => ['behavior', 'controller', 'model', 'view'],
'controller' => ['Index', 'Test', 'UserType'],
'model' => [],
'view' => ['index/index'],
],
// 定义test模块的自动生成
'test'=>[
'__dir__' => ['behavior','controller','model','widget'],
'controller'=> ['Index','Test','UserType'],
'model' => ['User','UserType'],
'view' => ['index/index','index/test'],
],
];

如何使用ThinkPHP5 ,自动生成目录?的更多相关文章

  1. Thinkphp5.0实战开发二------自动生成目录结构

    序言 ThinkPHP5.0 具备自动创建功能,可以用来自动生成需要的模块及目录结构和文件等,自动生成主要调用\think\Build 类库.ThinkPHP5.0中模块文件夹在application ...

  2. Word自动生成目录

    博主最近在写报告的时候要在Word里面做个目录,再做个页码,然后上网搜了一些方法,非常零散,我弄了好久才弄好.在这里我把整套方法分享一下. 声明:内容完全独创! 工具:Word 2016. 效果:如下 ...

  3. tp5自动生成目录

    1.// 定义应用目录 define('APP_PATH', __DIR__ . '/../application/'); // 加载框架引导文件 require __DIR__ . '/../thi ...

  4. Word 2010文档自动生成目录和某页插入页码

    一.Word 2010文档自动生成目录 关于Word文档自动生成目录一直是我身边同学们最为难的地方,尤其是毕业论文,经常因为目录问题,被要求修改,而且每次修改完正文后,目录的内容和页码可能都会发生变化 ...

  5. 第 10 篇:小细节 Markdown 文章自动生成目录,提升阅读体验

    目录 在文中插入目录 在页面的任何地方插入目录 处理空目录 美化标题的锚点 URL 作者:HelloGitHub-追梦人物 文中涉及的示例代码,已同步更新到 HelloGitHub-Team 仓库 上 ...

  6. csdn自动生成目录索引、插入代码片快捷键

    文章目录 自动生成目录索引 插入代码片 自动生成目录索引 文章开头加入 @[TOC](目录描述) 目录描述可不写 插入代码片 cmd/ctrl + shift + k

  7. Markdown自动生成目录

    Markdown自动生成目录 使用npm语法生成 1.安装npm 2.安装doctoc插件 3.执行生成 参考 Markdown自动生成目录 使用npm语法生成 1.安装npm 我的系统是deepin ...

  8. 去除office自动生成目录后生成的小框框(内容控件,目录控件)

    如何自动生成目录在这里就不进行阐述了,想必能看到这这里的人已经完成了目录的自动生成,那我就来直接演示如何去除自动生成目录后烦人的目录内容控件吧 直接上图片

  9. docfx 简单使用方法、自动生成目录的工具

    [摘要] 这是我编写的一个 Docfx 文档自动生成工具,只要写好 Markdown 文档,使用此工具可为目录.文件快速生成配置,然后直接使用 docfx 运行即可. https://github.c ...

随机推荐

  1. 2017.11.10 MPLAB IPE + ICD-3+ PIC32MM

    A trouble with ICD-3  programmer. MCU:  PIC32MM sw:  MPLAB IPE tool:  ICD-3 1 product introduction a ...

  2. 探索Javascript 异步编程

    在我们日常编码中,需要异步的场景很多,比如读取文件内容.获取远程数据.发送数据到服务端等.因为浏览器环境里Javascript是单线程的,所以异步编程在前端领域尤为重要. 异步的概念 所谓异步,是指当 ...

  3. Wordpress在主题中自定义登陆页面并且禁用自带的登陆页面

    在使用Wordpress制作主题之后,不想要他自带的登陆页面以及地址. 1.新建一个用户页面来接管与登陆相关的动作 //在主题根目录下新建page-login.php,通过action获取用户动作,然 ...

  4. 在Blender上安装RenderMan插件

    2018/3/27 Download and Install Blender itself Download RenderMan Installer (Need to register an acco ...

  5. Switch能否使用String做参数

    在Java语言中Swith可以使用参数类型有:Only convertible int values, strings or enum variables are permitted 可以自动转换为整 ...

  6. 封装Socket.BeginReceive/EndReceive以支持Timeout

    Socket .NET中的Socket类提供了网络通信常用的方法,分别提供了同步和异步两个版本,其中异步的实现是基于APM异步模式实现,即BeginXXX/EndXXX的方式.异步方法由于其非阻塞的特 ...

  7. 12C中Profile的使用

    12c中PROFILE在PDB和CDB中是公用的,不过创建的profile名称在CDB和PDB有所不同. 如: 1.CDB中创建Profile SQL> show con_name CON_NA ...

  8. 管理11gRAC基本命令 (转载) 很详细

    在 Oracle Clusterware 11g 第 2 版 (11.2) 中,有许多子程序和命令已不再使用:    crs_stat    crs_register    crs_unregiste ...

  9. jquery 如何使用innerHTML

    $("#responsediv") 是个Jquery对象,它Val()是对Value属性赋值对它无意义,Jquery没有innerHTML这个属性,应该这样写$("#re ...

  10. Android三种左右滑动效果 手势识别(转)

    本示例演示在Android中实现带渐显按钮的左右滑动效果. 关于滑动效果,在我的上一篇博文中提到过,有兴趣的朋友可以访问: http://www.cnblogs.com/hanyonglu/archi ...