博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
thinkphp总体设计
阅读量:5894 次
发布时间:2019-06-19

本文共 2163 字,大约阅读时间需要 7 分钟。

一、单入口文件index.php。写法如下:

<?php

// 应用入口文件

// 检测PHP环境

if(version_compare(PHP_VERSION,'5.3.0','<')) die('require PHP > 5.3.0 !');

// 开启调试模式 建议开发阶段开启 部署阶段注释或者设为false

define('APP_DEBUG',True);

// 定义运行时目录,在根目录下生成目录Runtime

define('RUNTIME_PATH','./Runtime/');

// 绑定Admin模块到当前入口文件

define('BIND_MODULE','Admin');

//

define('BUILD_CONTROLLER_LIST','Index,User,Menu');
define('BUILD_MODEL_LIST','User,Menu');

// 定义应用目录。如果你改变了项目目录(例如把Application更改为Apps),只需要在入口文件更改APP_PATH常量定义即可: define('APP_PATH','./Apps/');

define('APP_PATH','./Application/');

// 引入ThinkPHP入口文件
require './ThinkPHP/ThinkPHP.php';
//include './ThinkPHP/ThinkPHP.php'; // 引入ThinkPHP入口文件

// 亲^_^ 后面不需要任何代码了 就是如此简单

?>

最终生成的应用目录结构如下:

  1. www WEB部署目录(或者子目录)
  2. ├─index.php 应用入口文件
  3. ├─Apps 应用目录
  4. ├─Public 资源文件目录
  5. ├─Runtime 运行时目录
  6. └─Think 框架目录

二、框架目录ThinkPHP的结构如下:

  1. ├─ThinkPHP 框架系统目录(可以部署在非web目录下面)
  2. ├─Common 核心公共函数目录
  3. ├─Conf 核心配置目录
  4. ├─Lang 核心语言包目录
  5. ├─Library 框架类库目录
  6. ├─Think 核心Think类库包目录
  7. ├─Behavior 行为类库目录
  8. ├─Org Org类库包目录
  9. ├─Vendor 第三方类库目录
  10. ├─ ... 更多类库目录
  11. ├─Mode 框架应用模式目录
  12. ├─Tpl 系统模板目录
  13. ├─LICENSE.txt 框架授权协议文件
  14. ├─logo.png 框架LOGO文件
  15. ├─README.txt 框架README文件
  16. └─index.php 框架入口文件

三、目录安全文件

1、初次运行入口文件,会自动生成目录。在自动生成目录结构的同时,在各个目录下面我们还看到了index.html文件,这是ThinkPHP自动生成的目录安全文件。为了避免某些服务器开启了目录浏览权限后可以直接在浏览器输入URL地址查看目录,系统默认开启了目录安全文件机制,会在自动生成目录的时候生成空白的index.html文件,当然安全文件的名称可以设置,例如你想给安全文件定义为default.html可以在入口文件中添加: define('DIR_SECURE_FILENAME', 'default.html');

2、如果不想生成目录安全文件,添加: define('BUILD_DIR_SECURE', false);即可。

自动生成目录结构如下:

  1. Application
  2. ├─Common 应用公共模块
  3. ├─Common 应用公共函数目录
  4. └─Conf 应用公共配置文件目录
  5. ├─Home 默认生成的Home模块
  6. ├─Conf 模块配置文件目录
  7. ├─Common 模块函数公共目录
  8. ├─Controller 模块控制器目录
  9. ├─Model 模块模型目录
  10. └─View 模块视图文件目录
  11. ├─Runtime 运行时目录
  12. ├─Cache 模版缓存目录
  13. ├─Data 数据目录
  14. ├─Logs 日志目录
  15. └─Temp 缓存目录

四、应用项目的结构

1、模块化的设计架构

  1. Application 默认应用目录(可以设置)
  2. ├─Common 公共模块(不能直接访问)
  3. ├─Home 前台模块
  4. ├─Admin 后台模块
  5. ├─... 其他更多模块
  6. ├─Runtime 默认运行时目录(可以设置)

2、每个模块是相对独立的,其目录结构如下:

    由于采用多层的MVC机制,除了Conf和Common目录外,每个模块下面的目录结构可以根据需要灵活设置和添加,所以并不拘泥于上面展现的目录

  1. ├─Module 模块目录
  2. ├─Conf 配置文件目录
  3. ├─Common 公共函数目录
  4. ├─Controller 控制器目录
  5. ├─Model 模型目录
  6. ├─Logic 逻辑目录(可选)
  7. ├─Service Service目录(可选)
  8. ... 更多分层目录可选
  9. └─View 视图目录

转载于:https://www.cnblogs.com/wlzzu/p/3926405.html

你可能感兴趣的文章
多云定义:什么是多云,多云究竟是什么?
查看>>
ansible学习1
查看>>
MAC和IP的作用
查看>>
代码截屏
查看>>
Elasticsearch单实例安装
查看>>
我的友情链接
查看>>
ATMEL SAMA5D3X开发板
查看>>
随机产生和为S的N个正整数
查看>>
解决ubuntu中使用vi命令时方向键与退格键出错的问题
查看>>
jFinal 集成Velocity的toolbox,仓促完成的,有改进的想法欢迎留言:)
查看>>
perl和js对web请求的base64 encode/decode
查看>>
Hierarchical Data Library For WPFTree-grid控件介绍
查看>>
Eclipse新建类的时候如何自动添加注释(作者,时间的信息)
查看>>
Dokcer基础
查看>>
java 类型转换时需要注意的问题
查看>>
10562 - Undraw the Trees
查看>>
Android中的对话框的使用技巧
查看>>
matlab-线性代数 判断 矩阵的对称、实对称、反对称
查看>>
Linux快捷键技巧和系统变量5
查看>>
如何向妻子解释设计模式
查看>>