• Demo --项目目录

    • Addons --插件目录
    • Application --应用模块目录
      • Admin --后台模块

        • Common --后台公共函数目录

          • function.php (可选)
        • Conf --后台配置文件目录
          • config.php (可选)
        • Controller --后台控制器目录
          • IndexController.class.php
        • Model --后台模型目录
          • IndexModel.class.php
        • View --后台视图目录
          • index.html
        • Logic --后台逻辑目录(可选,Model层分出的层,用于实现复杂逻辑)
      • Home --前台模块
        • Common --前台公共函数目录

          • function.php (可选)
        • Conf --前台配置文件目录
          • config.php (可选)
        • Controller --前台控制器目录
          • IndexController.class.php
        • Model --前台模型目录
          • IndexModel.class.php
        • View --前台视图目录
          • index.html
        • Logic --前台逻辑目录(可选,Model层分出的层,用于实现复杂逻辑)
      • User --用户模块(可选,提供操作用户的一些方法,)
        • Common --用户模块公共函数目录

          • function.php (可选)
        • Conf --用户模块配置文件目录
          • config.php (可选)
        • Model --用户模块模型目录

          • UserModel.class.php
      • Common --公共模块(不能直接访问)
        • Common --公共函数目录

          • function.php (可选)
        • Conf --公共模块配置文件目录
          • config.php (可选)
        • Model --公共模块模型目录
          • UserModel.class.php
    • Public --静态资源目录Runtime --默认运行时目录(可以修改)
      • Admin
      • Home
      • static
    • ThinkPHP --框架目录
    • Uploads --上传文件目录
    • .htaccess --Apache配置文件(重写URL,修改访问权限)
    • index.php --入口文件

1. 程序运行时会先自动加载Common模块中的配置文件和Common/common/function.php公共函数,然后在加载对应模块的配置文件和公共函数,配置会覆盖前者,函数不能重复定义,否则会报错,在所有模块中可以直接访问到Common中配置文件的配置项、function.php中定义的常量和函数

2. Model层中完成简单的数据操作和自动验证功能,如果有特别复杂的操作,可以放在Logic层中完成

3. 使用D()可以创建自定义数据模型,默认创建Model层中的模型,如模型在Logic或者Service层中,可以添加参数 $user = D( ' User ' , ' Logic ' )或者$user = D( ' User ' , ' Service ' )获得Logic层或者Service层中的模型。如果模型属于其他模块,可以用 $user = D ( ' Admin / User ' ) 方法获得模型, D方法在创建模型不会重复创建

4. 在控制器中如无需进行复杂的数据操作,可以使用M(' User ')方法创建基础模型类

ThinkPHP3.2项目模块结构的更多相关文章

  1. SLP的模块结构

    SLP的模块结构 在开发初期,拟将SLP分为5个模块: 基础练习模块 特定歌曲难点练习模块 玩家能力测试模块 全局设置模块 玩家信息模块 基础练习模块 这里提供可控类型.可控长度.可控BPM的练习套餐 ...

  2. Laravel项目目录结构说明

    Laravel项目目录结构说明: |- vendor 目录包含你的 Composer 依赖模块及laravel框架. |- bootstrap 目录包含几个框架启动跟自动加载配置的文件. |- app ...

  3. NET5实践:项目创建-结构概述-程序运行-发布部署

    ASP.NET5实践01:项目创建-结构概述-程序运行-发布部署   1.项目创建 ASP.NET5项目模板有三种: 新建项目: 选择模板: 2.结构概述 References对应配置是project ...

  4. vue项目目录结构

    VUE项目目录结构 如上图所示,我们的目录结构就是这样的了. 目录/文件 说明 build 这个是我们最终发布的时候会把代码发布在这里,在开发阶段,我们基本不用管. config 配置目录,默认配置没 ...

  5. iOS开发总结——项目目录结构

    1.前言 清晰的项目目录结构有利于项目的开发,同时也是软件架构的一部分,所以,项目开发之初搭建项目的目录结构很重要.刚转iOS时,自己并不知道如何搭建App的项目目录,在参与开发两个应用后,结合Web ...

  6. React脚手架创建一个React应用以及项目目录结构详解

    react脚手架 用来帮助程序员快速创建一个基于xxx库的模板项目,包含了所有需要的配置,指定好了所有的依赖,可以直接安装/编译/运行一个简单效果 react提供了一个专门用于创建react项目的脚手 ...

  7. Angular4.x 安装|创建项目|目录结构|创建组件

    Angular4.x 安装|创建项目|目录结构|创建组件 安装最新版本的 nodejs node.js 官网:https://nodejs.org/zh-cn/ 去官网下载 node.js,下一步下一 ...

  8. sencha touch 入门系列 (四)sencha touch 新建项目目录结构解析

    通过上一章节的操作,我们的项目已经创建完成了, 大家通过http://127.0.0.1/MyFirst/应该都已经访问到了自己的应用, 接下来,我们展开我们项目,如图所示: 一.目录结构 1. .s ...

  9. Angular-cli新建项目目录结构详解

    Angular-cli新建项目目录结构详解 在上一篇博客中我们已经通过Angular CLI命令行工具创建出来一个全新的Angular项目,要想写项目,首先我们要先搞清楚项目的目录结构是怎样的,每个文 ...

随机推荐

  1. C++进阶--解谜operator new/delete

    //############################################################################ // 解谜operator new/del ...

  2. kafka产生的数据通过Flume存到HDFS中

    试验目标: 把kafka的生产者发出的数据流经由Flume放到HDFS来存储. 试验环境: java:1.8 kafka:2.11 flume:1.6 hadoop:2.8.5 试验流程: 1.进入z ...

  3. 学习笔记之Gurobi

    Gurobi Optimization - The State-of-the-Art Mathematical Programming Solver http://www.gurobi.com/ind ...

  4. 廖雪峰Java1-4数组操作-1遍历数组

    1.遍历数组 for循环通过下标遍历数组 for each直接遍历数组所有元素 int[] ns1 = {1, 34, 9, 16, 25}; for(int i = 0;i<ns1.lengt ...

  5. HTML5绘制饼图示例(一)

    原文地址:http://www.2cto.com/kf/201108/100251.html HTML5引入Canvas元素,用于图形的绘制,我们可以仅仅基于HTML和JavaScript就能绘制出原 ...

  6. [UE4]更新Flag坐标

    UserWidget中也是有Event Tick事件,游戏运行每一帧都会调用这个事件 一.在MiniMapFlagData结构体中,添加Slot和ImageWidget变量 二.在StaticMini ...

  7. set函数&操作

    集合的交叉并补 交集, 共同的部分 set1 & set2 set1.intersection(set2) 差集 set1有set2没有的元素 set1 - set2 set1.differe ...

  8. AWS之SSH登录:使用 PuTTY 从 Windows 连接到 Linux 实例

    使用 PuTTY 从 Windows 连接到 Linux 实例 启动您的实例之后,您可以连接到该实例,然后像使用您面前的计算机一样来使用它. 注意 启动实例后,需要几分钟准备好实例,以便您能连接到实例 ...

  9. XML与 实体的相互转化

    using System; using System.Linq; using System.Xml; using System.Reflection; using System.Data; using ...

  10. Markdown画各种图表

    并不是所有编辑器都支持,比如博客园这个就不支持... 流程图 st=>start: 开始 op=>operation: 首先按个按钮 op2=>operation: 那你从头开始吧 ...