1.ThinkPHP3.0可以支持Windows/Unix服务器环境,需要PHP5.2.0以上版本支持
2.
说明 | |
---|---|
ThinkPHP.php | 框架入口文件 |
Common | 框架公共文件目录 |
Conf | 框架配置文件目录 |
Lang | 框架系统语言目录 |
Lib | 系统核心基类库目录 |
Tpl | 系统模板目录 |
Extend | 框架扩展目录(关于扩展目录的详细信息请参考后面的扩展章节) |
Vendor 第三方类库目录
注意:如果你下载的是核心版本,有可能Extend目录是空的,因为ThinkPHP本身不依赖任何扩展。
3.
4. 开发流程
5.OOP
面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)是一种计算机编程 架构。OOP 的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。OOP 达 到了软件工程的三个主要目标:重用性、灵活性和扩展性。
组件 - 数据和功能一起在运行着的计算机程序中形成的单元,组件在 OOP 计算机程序中是模块和 结构化的基础。
抽象性 - 程序有能力忽略正在处理中信息的某些方面,即对信息主要方面关注的能力。
封装 - 也叫做信息封装:确保组件不会以不可预期的方式改变其它组件的内部状态;只有在那些提 供了内部状态改变方法的组件中,才可以访问其内部状态。每类组件都提供了一个与其它组件联系的接 口,并规定了其它组件进行调用的方法。
多态性 - 组件的引用和类集会涉及到其它许多不同类型的组件,而且引用组件所产生的结果得依据 实际调用的类型。
继承性 - 允许在现存的组件基础上创建子类组件,这统一并增强了多态性和封装性。典型地来说就 是用类来对组件进行分组,而且还可以定义新类为现存的类的扩展,这样就可以将类组织成树形或网状结构,这体现了动作的通用性。
6.MVC
MVC 是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用 MVC 应用程序被分成
三个核心部件:模型(M)、视图(V)、控制器(C)
7.CURD
CURD 是一个数据库技术中的缩写词,一般的项目开发的各种参数的基本功能都是 CURD。它代表创 建(Create)、更新(Update)、读取(Read)和删除(Delete)操作。
ThinkPHP 是使用 add、save、select 和 delete 方法表示模型的 CURD 操作。
8.Svn
svn(subversion)是近年来崛起的版本管理工具,是cvs的接班人。目前,绝大多数开源软件都使用svn作为代码版本管理软件。
svn服务器有2种运行方式:独立服务器和借助apache运行。
svn存储版本数据也有2种方式:BDB(一种事务安全型表类型)和FSFS(一种不需要数据库的存储系统)。因为BDB方式在服务器中断时,有可能锁住数据,所以还是FSFS方式更安全一点。
集中式代码管理的核心是服务器,如果脱离了服务器,开发者基本上可以说是无法工作的。
9.入口文件
ThinkPHP 采用单一入口模式进行项目部署和访问,无论完成什么功能,一个项目只有一个统一(但 不一定是唯一)的入口。并且所有的项目的入口文件是类似的,入口文件主要完成的作用是:
路径定义 项目名称定义(可选)
额外参数定义(可选)
载入框架入口文件(必须)
实例化一个 App 应用(必须)
下面是一个标准的入口文件的写法:
<?php
// 定义 ThinkPHP 框架路径(相对于入口文件)
define('THINK_PATH', '../ThinkPHP');
//定义项目名称和路径
define('APP_NAME', 'Myapp');
define('APP_PATH', '.');
// 加载框架入口文件
require(THINK_PATH."/ThinkPHP.php");
//实例化一个网站应用实例
App::run();
?>