• thinkphp总体设计


    一、单入口文件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 视图目录
  • 相关阅读:
    springMVC的自定义类型的转换器
    pl/sql
    oracle中的函数
    Oracle基础
    跳台阶算法题
    红黑树
    优先队列
    堆排序
    H5页面,输入框的光标,如果页面上下滑动光标停留在页面上,除了输入框外,松手过了一段时间才跑回输入框里面
    正则:判断为数字,输入的金额整数位不得超过9位,小数位不得超过2位!
  • 原文地址:https://www.cnblogs.com/wlzzu/p/3926405.html
Copyright © 2020-2023  润新知