ThinkPHP

225 阅读3分钟

ThinkPHP

目前大致有thinkphp3.2、thinkphp5.*、thinkphp6.*、thinkphp8.*这么几个版本,主要学习thinkphp6和8这两个最新的版本。

一、准备工作

1.编辑器选择

可选编辑器很多,但是依个人喜好跟习惯还是选择了vscode 和 sublime text 这两个编辑器。phpstorm也不错,弄不到激活码所以就放弃了。

2.PHP集成环境管理工具选择

集成环境包括:apache和nginx服务器、php各个版、 mysql版本、phpMyAdmin数据库以及FTP文件管理服务器。

集成环境工具有:

  • phpstudy
  • lamp
  • xampp
  • wampServer

还是依据个人喜好,选择了phpstudy集成环境工具。

3.安装Composer

Composer 是 PHP 的一个依赖管理工具。

Packagist/Composer中国全量镜像 (pkg.xyz)上自行学习下载。

还有一个简便的方法就是在phpstudy中选择版本安装,我选择的就是这个。

在window系统安装安装composer前请务必先安装php,

4.thinkphp基础

1.4.1 开发规范

  • 类名统一使用.php为后缀
  • 目录使用小写➕下划线
  • 每个类库文件都必须要有命名空间,且路径和文件名统一
  • 统一采用驼峰命名法(首字母大写)
  • 视图模版文件命名都采用小写+下划线

1.4.2 目录结构

目录结构有单应用模式和多应用模式。

  • public/index.html 入口文件
  • public/.htaccess 重写apache,隐藏index.php
  • runtime 应用的运行目录
  • extend 扩展类库目录
  • vendor composer类库目录
  • .env 环境变量文件
  • composer.json composer配置文件
  • think 命令行入口文件

5.thinkphp架构

  • 入口文件
  • 模块
  • 命名空间
  • 容器和依赖注入
  • Facade
  • 中间件
  • 钩子和行为
  • url

二、创建、运行项目

// 1.安装最新稳定版本:

composer create-project topthink\framework tp

// 更新框架:

composer update topthink\framework

// 安装最新版本:

composer create-project topthink\think=8.0.x-dev tp 


// 2.安装多应用模式:

composer require topthink\think-multi-app


// 3.安装模版引擎:

composer require topthink\think-view


// 4.开启调试模式:

// 在根目录.example.env文件复制一份修改成.env

// 在.env中把APP_DEBUG值改成true:

APP_DEBUG = true


// 5.测试运行:

php think run

http://localhost:8000/


// 6.安装验证码
composer require topthink\think-captcha

// 7.安装调试
composer require topthink/think-trace

三、视图 View

四、控制器 Controller

五、模型 Model

六、路由 Router

八、验证 Validate

九、响应 Response

十、请求 Request

十一、错误和日志

十二、API

十三、容器 Container

十四、中间件 MiddleWare

十五、门面 Facade

十六、服务 Service

十七、事件 Event

十八、数据库 Database

十九、命令

// 启动内置服务
php think run

// 查看版本号
php think sersion

// 快速生成模块或者应用目录
php think build demo

// 快速生成控制器(默认会生成资源型控制器)
php think make:controller index@user

// 快速会生成一个空的控制器
php think make:controller index@user --plain
// 快速会生成一个接口控制器
php think make:controller index@user --api

// 快速生成模型
php think make:model index@user

// 快速生成验证器
php think make:validate index@user

// 快速生成验证器
php think make:middleware Auth

// 快速生成一个带后缀的类库
php think make:controller Article@AddController

// 清除缓存(会删除runtime目录内的一切内容,并且保留一个空目录)
php think clear

// 清除缓存,不会保存目录
php think clear --dir

// 清除日志目录
php think clear --log

// 清除缓存,会清除缓存
php think clear --cache

// 清除日志目录并删除空目录
php think clear --log --dir

// 显示详细的debug信息
php think runcmd -v
php think runcmd -vv
php think runcmd -vvv