首页 >php框架 >ThinkPHP >thinkphp3.1项目开发部署

thinkphp3.1项目开发部署

尚
转载
2020-05-28 09:36:034000浏览

thinkphp3.1项目开发部署

下载ThinkPHP 3.1.3 框架包解压后文件结构:

├─ Common  框架公共文件目录
├─ Conf 框架配置文件目录
├─ Extend 框架扩展目录
├─ Lang 框架系统语言目录
├─ Lib 系统核心基类库目录
│ ├─ Behavior 内置行为类库
│ ├─ Core 核心类库包
│ ├─ Driver 内置驱动类库包
│ │ ├─ Cache 内置缓存驱动
│ │ ├─ Db 内置数据库驱动
│ │ ├─ TagLib 内置标签驱动
│ ├─ Template 内置模板引擎驱动
├─ Tpl 系统模板目录
├─ ThinkPHP.php 框架入口文件

新建项目入口文件index.php

<?php
require &#39;./ThinkPHP/ThinkPHP.php&#39;;

在浏览器中访问项目,页面显示:

1.jpg

此时项目目录 app下文件发生了变化,除了入口文件 index.php 和框架包,其他都是自动生成的:

2.jpg

各个文件夹作用:

├─ Common  项目公共文件目录
├─ Conf  项目配置目录
├─ Lang  项目语言包目录
├─ Lib  项目类库目录
│ ├─ Action  Action 类库目录
│ ├─ Behavior  行为类库目录
│ ├─ Model  模型类库目录
│ ├─ Widget  Widget类库目录
├─ Runtime  项目运行时目录
│ ├─ Cache  模板缓存目录
│ ├─ Data  数据缓存目录
│ ├─ Logs  日志文件目录
│ ├─ Temp  临时缓存目录
├─ ThinkPHP  框架目录
├─ Tpl  项目模板目录
├─ index.php   项目入口文件

这种方式的入口文件 index.php 是存在项目目录之内。也可以入口文件移动到 app 目录的外面,修改入口文件 index.php :

<?php
//定义项目名称
define(&#39;APP_NAME&#39;, &#39;Application&#39;);
// 定义项目路径
define(&#39;APP_PATH&#39;, &#39;./Application/&#39;);
//加载框架入口文件
require &#39;./ThinkPHP/ThinkPHP.php&#39;;

目录结构:

3.jpg
项目部署方式分为两种,一种是应用部署,每一个项目对应一个入口文件,例如前台入口文件对应 index.php,后台入口文件对应 admin.php,这种项目部署是ThinkPHP推荐的方式;

4.jpg

前台入口文件:

<?php
define(&#39;APP_NAME&#39;, &#39;Home&#39;);

define(&#39;APP_PATH&#39;, &#39;./Home/&#39;);

require &#39;./ThinkPHP/ThinkPHP.php&#39;;

后台入口文件:

<?php
define(&#39;APP_NAME&#39;, &#39;Admin&#39;);

define(&#39;APP_PATH&#39;, &#39;./Admin/&#39;);

require &#39;./ThinkPHP/ThinkPHP.php&#39;;

另一种是模块分组部署是把所有的应用对应到一个入口文件,项目的模板文件还是放到项目的Tpl目录下面,只是将外部调用的资源文件, 包括图片Js和Css统一放到网站的公共目录Public下面,分Images、Js和Css子目录存放,如果有可能的话,甚至也可以把这些资源文件单独放一个外部的服务器远程调用,并进行优化。

1.jpg

模块分组需要配置APP_NAME和APP_PATH;

在 WEB 根目录创建项目目录 App,并且拷贝框架包 ThinkPHP 至同级目录,同时在同级创建所有项目公共资源目录 Public、所有项目公共上传目录 Uploads 以及入口文件 index.php:

6.JPG

入口文件index.php:

<?php
define(&#39;APP_NAME&#39;, &#39;App&#39;);

define(&#39;APP_PATH&#39;, &#39;./App/&#39;);

//开启debug,不加载缓存文件
define(&#39;APP_DEBUG&#39;, true);

require &#39;./ThinkPHP/ThinkPHP.php&#39;;

通过 url 访问 index.php ,初始化项目环境后,App 目录下自动生成的目录:

7.jpg

然后在App/Conf/config.php 配置文件中,配置分组选项:

<?php
return array(
    //&#39;配置项&#39;=>&#39;配置值&#39;
    &#39;APP_GROUP_LIST&#39; => &#39;Admin,Home&#39;,
    &#39;DEFAULT_GROUP&#39; => &#39;Home&#39;,
);

如果此时访问 index.php 入口文件,ThinkPHP 会报错:

8.jpg

因为在公共配置文件中开启了模块分组,但相应的分组目录并没有创建,需要手动创建 Admin 和 Home 组的各自配置文件:Conf 目录下创建 Admin 和 Home 目录。

然后分别在目录中创建 config.php 配置文件;App/Lib/Action 目录也需要创建 Admin 和 Home 目录,然后将默认创建的 IndexAction.class.php 文件移动到 App/Lib/Action/Home 目录,此时访问入口文件不会报错,项目部署成功:

9.jpg

10.jpg

如果隐藏入口文件,两者的url地址看起来几乎一样:

11.jpg

12.jpg

推荐教程:《TP5

以上是thinkphp3.1项目开发部署的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:jianshu.com。如有侵权,请联系admin@php.cn删除