(说明:文中的颜色一一对应)
目录结构
www  WEB部署目录(或者子目录)
├─index.php 入口文件
├─README.md README文件
├─composer.json Composer定义文件
├─Application 应用目录
├─Public 资源文件目录
└─ThinkPHP
框架核心目录
 
  3.2版本开始相比之前的版本
  自带一个完整的应用目录结构(Application)和默认的应用入口文件(index.php
 
  ApplicationPublic目录下面都是空的
 
README.mdcomposer.josn文件仅用于说明,实际部署的时候可以删除。
 

    1. ThinkPHP为框架核心目录,其目录结构如下:

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

    2.1 入口文件主要完成:

    定义框架路径、项目路径(可选)

    定义调试模式和应用模式(可选)

    定义系统相关常量(可选)

    载入框架入口文件(必须)

    2.2 一般不建议在入口文件中做过多的操作

    自动生成

    自动创建目录

    在第一次访问应用入口文件的时候,会显示如图所示的默认的欢迎页面,

    并自动生成了一个默认的应用模块Home。

 

    3.接下来再看原来空的Application 目录下面,

    已经自动生成了公共模块Common 、默认的Home 模块 和Runtime 运行时目录的目录结构:

    Application

    ├─Common 应用公共模块

    │ └─Conf 应用公共配置文件目录

    │ ├─Common 应用公共函数目录

    ├─Home 默认生成的Home模块

    │ ├─Conf 模块配置文件目录

    │ ├─Common 模块函数公共目录

    │ ├─Controller 模块控制器目录

    │ ├─Model 模块模型目录

    │ └─View 模块视图文件目录

    ├─Runtime 运行时目录

    │ ├─Cache 模版缓存目录

    │ ├─Data 数据目录

    │ ├─Logs 日志目录

    │ └─Temp 缓存目录

    如果不是Windows环境下面的话,需要对应用目录Application 设置可写权限才能自动生成。

    如果不是调试模式的话,会在Runtime目录下面生成common~runtime.php 文件(应用编译缓存文

件)。

 

专题1:目录安全文件

在自动生成目录结构的同时,在各个目录下面我们还看到了index.html文件,这是ThinkPHP自动生成的目

录安全文件。

为了避免某些服务器开启了目录浏览权限后可以直接在浏览器输入URL地址查看目录,系统默认开启了目

录安全文件机制,会在自动生成目录的时候生成空白的index.html 文件,当然安全文件的名称可以设置,

例如你想给安全文件定义为default.html 可以在入口文件中添加:

define('DIR_SECURE_FILENAME', 'default.html');

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

require './ThinkPHP/ThinkPHP.php';

ThinkPHP_基础(1)目录结构的更多相关文章

  1. 大数据每日干货第四天(linux基础之一目录结构与常用命令)

           为了和qq空间同步,也写的第四天,前面几天明天会发布,本来打算把每天学的东西记录下来,通过朋友给的建议要发的话稍微系统化下,从大数据需要的linux基础,到离线数据分析包括hadoop. ...

  2. (大数据工程师学习路径)第一步 Linux 基础入门----目录结构及文件基本操作

    Linux 目录结构及文件基本操作 介绍 1.Linux 的文件组织目录结构. 2.相对路径和绝对路径. 3.对文件的移动.复制.重命名.编辑等操作. 一.Linux 目录结构 在讲 Linux 目录 ...

  3. python基础-软件目录结构规范

    一.定义目录结构目的 可读性高: 不熟悉这个项目的代码的人,一眼就能看懂目录结构,知道程序启动脚本是哪个,测试目录在哪儿,配置文件在哪儿等等.从而非常快速的了解这个项目. 可维护性高: 定义好组织规则 ...

  4. Linux基础入门-目录结构及文件基本操作

    一.Linux的目录结构: Windows是以存储介质为主的,主要以盘符及分区来实现文件的管理,然后之下才是目录.但Linux的磁盘从逻辑上来说是挂载在目录上的,每个目录不仅能使用本地磁盘分区的文件系 ...

  5. linux基础知识-目录结构

    linux的目录结构/bin:是Binary的缩写,这个目录存放着系统必备执行命令 /boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文 件,自己的安装别放这里 /d ...

  6. 2.react 基础 - create-react-app 目录结构 及 组件应用

    1. react-app 脚手架的 目录结构 node_modules -d 存放 第三方下载的 依赖的包 public -d    资源目录 favicon.ico - 左上角的图标 index.h ...

  7. linux基础一(目录结构)

    一.linux目录结构 1.根目录/下 bin:用户二进制文件,常用命令都在此目录下 sbin;这个目录下的linux命令通常由系统管理员使用 etc:包含所有程序所需的配置文件,以及服务的启动文件 ...

  8. Linux基础之 ---目录结构

    类Unix系统目录结构ubuntu没有盘符这个概念,只有一个根目录/,所有文件都在它下面/ 根目录bin //系统可执行程序,如命令boot //内核和启动程序,所有和启动相关的文件都保存在这里gru ...

  9. yii基础应用目录结构

    basic/ 应用根目录 composer.json Composer 配置文件, 描述包信息 config/ 包含应用配置及其它配置 console.php 控制台应用配置信息 web.php We ...

  10. linux系统基础之--目录结构(基于centos7.4 1708)

随机推荐

  1. Python【2】-列表和元组

    一.序列 python包含六种内建的序列:列表.元组.字符串.unicode字符串.buffer对象.xrange对象. 列表可以修改,元组是不能修改的. 二.列表 列表list是变长序列,其中的内容 ...

  2. [IOS 开发]TableView如何刷新指定的cell 或section

    //一个section刷新 NSIndexSet *indexSet=[[NSIndexSet alloc]initWithIndex:]; [tableview reloadSections:ind ...

  3. 虚拟机启动linux系统报错,此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态

    在使用虚拟机启动linux的时候报错,如下: 已将该虚拟机配置为使用 64 位客户机操作系统.但是,无法执行 64 位操作. 此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态. ...

  4. mysql TIMESTAMP 设置为可NULL字段

    今天遇到问题是mysql新建表的时候TIMESTAMP 类型的字段 默认是NOT NULL 然后上网查了一下 发现 很多都说 就是不能为NULL的 这都什么心态 其实设置为空很简单 只要在字段后面加上 ...

  5. OC基础--对成员变量的封装

    #import <Foundation/Foundation.h> //日期结构体 typedef struct{ int year; int month; int day; } Date ...

  6. #1000 A + B (hihoCoder)

    时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 求两个整数A+B的和 输入 输入包含多组数据.每组数据包含两个整数A(1 ≤ A ≤ 100)和B(1 ≤ A ≤ 100) ...

  7. mySql 基本语法学习笔记

     create database if not exists yang;    drop database if exists yang;     show databases;   show dat ...

  8. 关于SqlHelper

    在 SqlHelper 类中实现的方法包括:   ExecuteNonQuery.此方法用于执行不返回任何行或值的命令.这些命令通常用于执行数据库更新,但也可用于返回存储过程的输出参数.   Exec ...

  9. HDU 1005 Number Sequence

    Number Sequence Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)T ...

  10. Scala的第一步

    第一步:学习使用Scala解释器 开始Scala最简单的方法是使用Scala解释器,它是一个编写Scala表达式和程序的交互式“shell”.在使用Scala之前需要安装Scala,可以参考 Firs ...