西数超哥博客
运维经验教程分享

TP6安装及入门

安装

测试运行

打开安装的根目录,在地址栏输入 cmd 后按回车键。进入cmd界面。

在这里插入图片描述

然后输入 php think run 后按回车。

在这里插入图片描述

复制上图的地址,在浏览器地址栏输入,回车,显示下面的界面即成功。

在这里插入图片描述

开发规范

遵循规范很重要,下面图片在TP6的手册里可以看到。熟记。
在这里插入图片描述
上图框住的两点可以看下面这张图理解一下。
在这里插入图片描述

单应用目录结构

TP6默认是单应用模式。

www  WEB部署目录(或者子目录)
├─app           应用目录
│  ├─controller      控制器目录
│  ├─model           模型目录
│  ├─ ...            更多类库目录
│  │
│  ├─common.php         公共函数文件
│  └─event.php          事件定义文件
│
├─config                配置目录
│  ├─app.php            应用配置
│  ├─cache.php          缓存配置
│  ├─console.php        控制台配置
│  ├─cookie.php         Cookie配置
│  ├─database.php       数据库配置
│  ├─filesystem.php     文件磁盘配置
│  ├─lang.php           多语言配置
│  ├─log.php            日志配置
│  ├─middleware.php     中间件配置
│  ├─route.php          URL和路由配置
│  ├─session.php        Session配置
│  ├─trace.php          Trace配置
│  └─view.php           视图配置
│
├─view            视图目录
├─route                 路由定义目录
│  ├─route.php          路由定义文件
│  └─ ...   
│
├─public                WEB目录(对外访问目录)
│  ├─index.php          入口文件
│  ├─router.php         快速测试文件
│  └─.htaccess          用于apache的重写
│
├─extend                扩展类库目录
├─runtime               应用的运行时目录(可写,可定制)
├─vendor                Composer类库目录
├─.example.env          环境变量示例文件
├─composer.json         composer 定义文件
├─LICENSE.txt           授权说明文件
├─README.md             README 文件
├─think                 命令行入口文件

多应用目录结构

www  WEB部署目录(或者子目录)
├─app           应用目录
│  ├─app_name           应用目录
│  │  ├─common.php      函数文件
│  │  ├─controller      控制器目录
│  │  ├─model           模型目录
│  │  ├─view            视图目录
│  │  ├─config          配置目录
│  │  ├─route           路由目录
│  │  └─ ...            更多类库目录
│  │
│  ├─common.php         公共函数文件
│  └─event.php          事件定义文件
│
├─config                全局配置目录
│  ├─app.php            应用配置
│  ├─cache.php          缓存配置
│  ├─console.php        控制台配置
│  ├─cookie.php         Cookie配置
│  ├─database.php       数据库配置
│  ├─filesystem.php     文件磁盘配置
│  ├─lang.php           多语言配置
│  ├─log.php            日志配置
│  ├─middleware.php     中间件配置
│  ├─route.php          URL和路由配置
│  ├─session.php        Session配置
│  ├─trace.php          Trace配置
│  └─view.php           视图配置
│
├─public                WEB目录(对外访问目录)
│  ├─index.php          入口文件
│  ├─router.php         快速测试文件
│  └─.htaccess          用于apache的重写
│
├─extend                扩展类库目录
├─runtime               应用的运行时目录(可写,可定制)
├─vendor                Composer类库目录
├─.example.env          环境变量示例文件
├─composer.json         composer 定义文件
├─LICENSE.txt           授权说明文件
├─README.md             README 文件
├─think                 命令行入口文件

在这里插入图片描述
要开启多应用,则必须使用composer安装多应用拓展才可以。

composer require topthink/think-multi-app

开启调试与配置文件

开启调试

开启调试模式会牺牲一些执行效率,但是可以提高开发排错的能力。

通过命令行安装的TP6,会自动在根目录生成一个 .example.env 文件,这个文件就是环境配置文件,只需要将该文件的名称改为 .env 调试模式即可生效。
在这里插入图片描述
刷新页面。
在这里插入图片描述
点开 .env 文件,查看里面的内容。
在这里插入图片描述
只需要把 APP_DEBUG 设为 false,即可关闭调试模式。

开启调试模式的优势:

  1. 记录系统运行流程的执行过程;
  2. 显示错误和调试信息,并且开启日志记录;
  3. 模板修改可以及时生效,不会被缓存干扰;
  4. 发生异常时,显示异常信息;

另一种调试模式, 不如上面详细,但是也可以显示一些简要的错误信息。
开启方法:

  1. 关闭调试模式 APP_DEBUG = false ;
  2. 打开根目录下的 config 文件夹下的 app.php 文件;
  3. 将 show_error_msg 设为 true ;
在这里插入图片描述

配置文件

配置文件有两种:

  1. .env 文件,适合本地
  2. config 文件夹下的php文件,有很多类型的配置

官方手册明确表示: .env 文件里的环境变量用于本地开发,部署到服务器后会被忽略 。

获取配置文件中的值

比如说在前面出现过的 Index.php 文件中获取 .env 文件中的值。
首先要先加载配置文件类,然后使用 get 方法获取。
在这里插入图片描述
在浏览器地址栏中输入 http://127.0.0.1:8000/index/get_config 回车,显示下图。
在这里插入图片描述
再比如说,要获取 config 文件夹下的 database.php 文件里的 hostname 的值。
在这里插入图片描述
使用get方法可以获取值,也可以使用has方法判断某种配置是否存在。

Env::has('database.hostname); //return  boolean

两种配置文件的优先级

上面我们知道,有两种配置文件,还知道 .env 文件部署之后会被忽略掉。是怎么忽略掉呢?先看一下 config 文件夹下的 database.php 文件。

在这里插入图片描述
然后看一下 database.php 文件的 env() 方法。
在这里插入图片描述
env() 方法是获取 .env 文件里面的环境变量的值,如果获取不到就使用默认值。

所以,在本地开发的时候, .env 文件优先级高于 Config 文件夹下的配置文件,但是当我们部署到服务器后, .env 文件被忽略掉, env() 方法也就获取不到 .env 文件里面的环境变量的值了,就会使用默认值。所以在部署后,Conifg 文件夹下的配置文件优先级高于 .env 文件。

我记得有个地方是判断当前的域名是否为 127.0.0.1,以此来判断是本地环境还是服务器环境。

URL访问模式

URL解析

TP框架很多操作是通过url来实现的。

  1. http://serverName 是域名地址,比如127.0.0.1:8000或localhost/tp6/;
  2. index.php 是根目录下 public 文件夹下的入口文件;
  3. 控制器是 app 目录下 controller 控制器目录下的控制器(一种php文件);
  4. 操作是控制器里面的方法

单应用

http://serverName/index.php/控制器/操作/参数/值/参数/值...

多应用

http://serverName/index.php/应用/控制器/操作/参数/值/参数/值...

注意事项:
1.控制器的类名必须和控制器的文件名一样,否则报错(开发规范)。
2.访问控制器中的index操作可以不写在url上。

访问Index.php控制器里的index方法

http://127.0.0.1:8000/index.php/index
在这里插入图片描述
http://127.0.0.1:8000/index.php/index/index
在这里插入图片描述

上图可以看出,控制器里面的index方法是可以不写的。

访问Index.php控制器里的get_config方法

http://127.0.0.1:8000/index.php/index/get_config

在这里插入图片描述
Index控制器内容
在这里插入图片描述

URL兼容模式

一般很少用,加个 ?s= 即可。
在这里插入图片描述

赞(0)
声明:本站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,若涉及侵权请及时告知,将会在第一时间删除。本站原创内容未经允许不得转载:西数超哥博客 » TP6安装及入门

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址