ThinkPHP(一)

关于ThinkPHP

ThinkPHP国产、开源、面向对象、免费开源的MVC框架,诞生于2006年提倡大道至简的思想,什么是大道至简,什么事儿都要用最简单的方法办到,是单一入口框架;
特点:简易的MVC模式、丰富的查询语言、详尽的文档和中文注释;
首先因为PHP语言非常的易学,语法简单,学习周期短,运行速度快,跨平台性能优越,有成熟的框架,有比较完整的支持,目前主流技术都支持,受到了广大企业的欢迎;
在我们开发的过程中使用框架能大大提高我们的开发效率,在国内有很多PHP框架,比较常见的有ThinkPHP、Yii、Laravel等等,市面上中小型企业一般都是用ThinkPHP做开发;
ThinkPHP框架是基于MVC思想来写的,什么是MVC?
MVC是一种设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用应用程序被分成三个核心部件:模型(Model)、视图(View)、控制器(Controller),它们各自处理自己的任务,而不去受到其它的影响,这样的好处呢就是在应用程序开发的初期,视图的美工人员包括程序的编码人员他们各自进行各自的任务,而不会因为其它的原因耽误自己的进展,包括在后期进行改版的时候只需要改变视图而不需要改变控制器的逻辑,所以就大大加快了应用程序的开发;

ThinkPHP框架简介

1、什么是框架?
比如在生活中的框架,你去售楼部买房子的时候,买回来的是毛坯房,有一个大概的样子,有厨房,卫生间,卧室,客厅,那么拿到房子之后你可以按照你自己的思想去装修成你想要的样子;
那么代码中的框架,是程序结构代码的集合,而不是业务逻辑代码。集合中包含了许多类、函数和功能类包。这个集合是按照一定标准组成的功能体系。
2、为什么要使用框架?
可以帮助我们快速、高效搭建稳定的业务系统,可以是业务系统更加灵活,而且易维护,可以让我们更专注于系统的业务逻辑设计。
其实无论是经验丰富的开发人员,还是初级的开发者都会面临这个问题,比如你要快速的开发一个企业级的应用或者说做一个强大的管理系统的时候,我们就需要用到框架了,如果企业需要快速开发应用,那么也可以直接使用市面上免费开源的ERP(集成化管理信息系统)、CRM(客户关系管理)、CMS(内容管理系统);

ThinkPHP基础

1、建立一个简单项目了解框架的运行流程

// 应用入口文件

// 检测PHP环境
if(version_compare(PHP_VERSION,'5.3.0','<'))  die('require PHP > 5.3.0 !');

// 开启调试模式 建议开发阶段开启 部署阶段注释或者设为false
define('APP_DEBUG',True);

// 定义应用目录
define('APP_PATH','./Admin/');

//定义常用路径
define('CSS_PATH','./Public/Admin/css/');
define('JS_PATH','./Public/Admin/js/');

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

2、目录结构分析
应用目录:运行入口文件后生成相应的应用目录,目录结构层次非常清晰;

Application
├─Common 应用公共模块
│ ├─Common 应用公共函数目录
│ └─Conf 应用公共配置文件目录
├─Home 默认生成的Home模块
│ ├─Conf 模块配置文件目录
│ ├─Common 模块函数公共目录
│ ├─Controller 模块控制器目录
│ ├─Model 模块模型目录
│ └─View 模块视图文件目录
├─Runtime 运行时目录
│ ├─Cache 模版缓存目录
│ ├─Data 数据目录
│ ├─Logs 日志目录
│ └─Temp 缓存目录

框架目录:ThinkPHP的结构如下

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

3、ThinkPHP的配置文件
ThinkPHP在运行的时候首先加载框架的配置文件,然后再加载项目的配置文件;
框架的配置文件:ThinkPHP/Conf/convention.php
项目的配置文件:Application/Common/conf
在项目配置文件里使用键值对的方式定义配置文件,框架提供的C方法(可以借助Config单词来帮助记忆)来读取已有的配置,配置参数不区分大小写。
如果要使用自定义配置文件,需要在项目配置文件里面去加载进来

'LOAD_EXT_CONFIG'=>'user';

项目在运行的时候每次都会加载自定义的配置文件,作为一个了解,不推荐使用自定义的配置文件;

注意:

// 开启调试模式建议开发阶段开启
define('APP_DEBUG',true);
项目运行的时候会将配置文件(除了自定义配置文件)生成一个编译文件也就是缓存文件,会把这些配置项在首次运行的时候加载到Runtime文件下,如果没有开启APP_DEBUG,编译一次之后下次就不会再读取配置,项目部署上线之后关闭该模式,并删掉Runtime文件夹,然后重新运行,这样就可以避免项目运行的时候频繁读取配置文件,拖延网站打开速度;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342

推荐阅读更多精彩内容