首页 理论教育PHPMVC开发实战:ThinkPHP系统目录及扩展类库详解

PHPMVC开发实战:ThinkPHP系统目录及扩展类库详解

【摘要】:对于普通的开发者而言,最需要关注Lib目录及Extend目录,接下来分别进行介绍。由于ThinkPHP遵循Apache 2.0协议,意味着PHP开发人员可以通过修改ThinkPHP源代码,以便更适合自己的开发需求,这就要求开发人员必须要对Extend目录下的扩展类库要有深入的认识。

ThinkPHP 3.0共由6个一级目录所组成,这些一级目录下包含了ThinkPHP所需要的类库文件,如图5-4所示。

978-7-111-42852-7-Part02-82.jpg

图5-4 ThinkPHP目录

其中Common为ThinkPHP框架的核心函数目录,包含了ThinkPHP标准函数、基础函数及运行时函数;Conf为框架配置文件目录;Extend为框架扩展目录;Lang为框架语言目录;Lib为框架核心目录;Tpl为框架视图模板目录。对于普通的开发者而言,最需要关注Lib目录及Extend目录,接下来分别进行介绍。

1.Lib目录

Lib目录存放了ThinkPHP最核心的文件,它以模块化的方式将文件组织在一起,所有的文件均遵循ThinkPHP的文件命名规范,Lib目录结构如下。

978-7-111-42852-7-Part02-83.jpg

978-7-111-42852-7-Part02-84.jpg(www.chuimin.cn)

2.Extend目录

Lib类库只是提供了ThinkPHP的基础类库,能够处理MVC开发中的最基础功能,通过Extend类库,可以实现更加复杂和高级的功能,例如多数据库驱动,多模板解释引擎、云计算开发等,下面将对Extend类库进行讲解。

978-7-111-42852-7-Part02-85.jpg

978-7-111-42852-7-Part02-86.jpg

978-7-111-42852-7-Part02-87.jpg

Lib和Extend目录包含了ThinkPHP重要的类库,这些类库的使用在后面的章节内容中会进行介绍,在此读者只需要理解即可。由于ThinkPHP遵循Apache 2.0协议,意味着PHP开发人员可以通过修改ThinkPHP源代码,以便更适合自己的开发需求,这就要求开发人员必须要对Extend目录下的扩展类库要有深入的认识。例如默认情况下Page.class.php分页类只能满足于ThinkPHP的3种URL模式,但在实际应用开发中通常需要在Ajax、静态网页甚至移动终端中使用分页功能,这时如果不修改Page.class.php文件,就难以满足要求;再比如许多超大型的网站数据库操作均需要读写分离、多类型数据库读写等功能,这时就需要开发人员修改db.class.php文件了。

总之,虽然ThinkPHP提供了非常丰富的功能,但是要想让ThinkPHP应用得更加得心应手,修改或增加ThinkPHP类库文件是必须要做的一件事。