ThinkPHP3.2项目模块结构
- Demo --项目目录
- Addons --插件目录
- Application --应用模块目录
- Admin --后台模块
- Common --后台公共函数目录
- function.php (可选)
- Conf --后台配置文件目录
- config.php (可选)
- Controller --后台控制器目录
- IndexController.class.php
- Model --后台模型目录
- IndexModel.class.php
- View --后台视图目录
- index.html
- Logic --后台逻辑目录(可选,Model层分出的层,用于实现复杂逻辑)
- Common --后台公共函数目录
- Home --前台模块
- Common --前台公共函数目录
- function.php (可选)
- Conf --前台配置文件目录
- config.php (可选)
- Controller --前台控制器目录
- IndexController.class.php
- Model --前台模型目录
- IndexModel.class.php
- View --前台视图目录
- index.html
- Logic --前台逻辑目录(可选,Model层分出的层,用于实现复杂逻辑)
- Common --前台公共函数目录
- User --用户模块(可选,提供操作用户的一些方法,)
- Common --用户模块公共函数目录
- function.php (可选)
- Conf --用户模块配置文件目录
- config.php (可选)
Model --用户模块模型目录
- UserModel.class.php
- Common --用户模块公共函数目录
- Common --公共模块(不能直接访问)
- Common --公共函数目录
- function.php (可选)
- Conf --公共模块配置文件目录
- config.php (可选)
- Model --公共模块模型目录
- UserModel.class.php
- Common --公共函数目录
- Admin --后台模块
- 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 ')方法创建基础模型类