《Php笔记3.1》ThinkPHP 概述及配置——目录结构,mvc分层架构
ThinkPHP 框架概述
本课时简单介绍了 PHP 框架及其优缺点、ThinkPHP 框架,并且实现一个 Hello ThinkPHP。


应用入口文件:/Application/Home/Controller/IndexController.class.php
程序目录结构与 MVC 分层架构
本课时讲解了 THinkPHP 应用典型的目录结构,以及 ThinkPHP 的 MVC 特性。
ThinkPHP目录结构:
- [Application] —— 是应用目录,下面除了Runtime,每个文件夹都是一个模块(Module)
- [Common] —— 通用模块
- [Home] —— 系统自动生成的模块
- [Common] —— 模块函数库
- [Conf] —— 模块配置
- [Controller] —— 控制器
- [Model] —— 模型
- [View] —— 视图
- [Runtime] ——缓存目录
- [Public]
- [ThinkPHP]
- [Common] —— 通用函数库
- [Conf] —— 惯例配置
- [Lang] —— 语言包
- [Library] —— 类库
- [Mode] —— 应用模式,定义一些应用模式的文件
- [Tpl] —— 框架自带的模板
- ThinkPHP.php —— 框架的入口文件(和应用的入口文件是不同的)
- index.php —— 入口文件(应用对外提供的接口)

入口文件中可以通过定义常量的方式来绑定模块:
define('BIND_MODULE','User');
MVC分层架构:

ThinkPHP 配置
本课时讲解了 ThinkPHP 框架配置加载的机制,读取、扩展配置,以及介绍框架支持的配置格式。
配置加载机制:

后加载的会覆盖前面的。
配置读取:

动态配置:

扩展配置:
![]()
演示:
模块配置覆盖惯例配置 /Application/Home/Conf/config.php
<?php return array( //'配置项'=>'配置值' /* 数据库设置 */ 'DB_TYPE' => 'mysql', // 数据库类型 'DB_HOST' => 'localhost', // 服务器地址 'DB_NAME' => 'woodk', // 数据库名 'DB_USER' => 'root', // 用户名 'DB_PWD' => 'root', // 密码 'DB_PORT' => '3306', // 端口 'DB_PREFIX' => 'wk_', // 数据库表前缀 'LOAD_EXT_CONFIG' => 'user,upload' //加载扩展配置文件 );
复制 /ThinkPHP/Conf/convention.php 惯例配置文件中的数据库配置信息,在模块配置文件中重新定义。
以下两个是扩展配置文件:
/Application/Home/Conf/user.php
<?php return array( //'配置项'=>'配置值' 'USER_NAME' => 'jike' );
/Application/Home/Conf/upload.php
<?php return array( //'配置项'=>'配置值' 'UPLOAD_NAME' => 'jike_upload' );
打印出来, /Application/Home/Controller/IndexController.class.php
<?php namespace Home\Controller; use Think\Controller; class IndexController extends Controller { public function index(){ $config = C(''); //读取全部配置 dump($config); //ThinkPHP中的格式化打印 } }
访问index.php页面



浙公网安备 33010602011771号