为什么80%的码农都做不了架构师?>>>
在上一节无忧主机(www.51php.com)小编和大家讲了thinphp 3.0的主入口文件,不知大家是否还记得我们第一次执行主入口文件后,我们的项目目录下自动生成了很多文件夹,这个就是我们项目的结构,小编今天就给大家详细的讲下这些目录是做什么的,里面放的是什么文件。因为小编是在本地搭建的php虚拟主机环境,我直接在本地把目录结构截图下来,
在上图中,我们可以看到六个目录,下面我来详细的讲下每个目录的作用。
Lib目录:这是最重要的一个文件夹Lib,里面放的是我们项目的控制器和模型,如下图中的…/lib/Action就是我们的控制器目录,我们可 以在里面看到一个默认的控制器(IndexAction.class.php),…/lib/libModel是我们的模型目录,关于控制器和模型还有视 图大家不理解没关系,无忧主机(www.51php.com)小编会在后面详细讲到。
Common目录:这个目录是项目公共文件目录,一般用来放置项目的公共函数,
Tpl目录:这是项目模板目录,模板其实就是我们的视图,在thinkphp里面是把html代码和php分离开来的,在模板(视图)里面通过标签的方式来调取我们分配的变量,就像dedecms内容管理系统一样,大家还记得无忧主机(www.51php.com)小编前面和大家讲的dedecms仿站基础模版标签吗?呵呵,原理是一样的。
Conf目录:这个目录是放项目的所有配置文件,比如我们的数据库配置信息,网站版权信息等等。Lang目录:哈哈,我有理由相信大家都很熟悉了吧,对,这个是语言包目录,如果你的项目不需要多语言支持,我们可以把这个目录删除。
Runtime目录:这个是项目运行时目录,包括Cache(模板缓存)、Temp(数据缓存)、Data(数 据目录)和Logs(日志文件)子目录,如果存在分组的话,则首先是分组目录。除了这六个目录,我们还可以部署自己的目录,比如说我们网站项目的公共资源 (css,js,image等)可以定义为Public,网站的上传目录我们可以定义为Uploads,作为用户上传的统一目录。如果大家有更好的部署计 划,就按照自己的思路去部署,但thinkphp帮我们生成的那六个目录确实统一规定的。好了,目录结构就讲到这里,我们下节开始学习控制器!