1.thinkphp6配置文件详解
一,路由怎么配置?
多应用路由
1.应用里的路由
在对应的应用里创建路由,如index应用则app\index\route\file_name.php
Route::rule('路由名', '类文件名/方法名');
http://域名/index.php/应用名/路由名
2.全局路由
在app\route\file_name.php
全局路由分配到多应用里
Route::rule('路由名', '\app\应用名\controller\类文件名@方法名');
http://域名/index.php/路由名
二,Trace调试怎么配置?
安装 composer require topthink/think-trace
.env 配置 APP_DEBUG = true
三,怎么创建使用model?
<?php
namespace app\model;
use think\Model;
class User extends Model
{
// 设置当前模型对应的完整数据表名称
protected $table = 'think_user';
// 设置当前模型的数据库连接
protected $connection = 'db_config';
// 模型初始化 init必须是静态方法,并且只在第一次实例化的时候执行,并且只会执行一次
protected static function init()
{
//TODO:初始化内容
}
}
常用的模型设置属性包括(以下属性都不是必须设置):
属性 描述
name 模型名(相当于不带数据表前后缀的表名,默认为当前模型类名)
table 数据表名(默认自动获取)
suffix 数据表后缀(默认为空)
pk 主键名(默认为id)
connection 数据库连接(默认读取数据库配置)
query 模型使用的查询类名称
field 模型允许写入的字段列表(数组)
schema 模型对应数据表字段及类型
type 模型需要自动转换的字段及类型
strict 是否严格区分字段大小写(默认为true)
disuse 数据表废弃字段(数组)
四,分布式数据库配置使用?
五,中间件怎么使用?
- 中间件的作用
- 主要用于拦截或过滤应用的
HTTP
请求,并进行必要的业务处理
- 中间件的使用步骤
- 第一步:生成中间件文件,定义中间件
- 第二步:在全局配置文件中定义中间件别名(可省略)
- 第三步:注册中间件(全局、应用、路由、控制器中间件)
3. 通过命令行指令快速生成中间件
- php think make:middleware Check #这个指令会"app/middleware"目录下面生成一个"Check"中间件。
中间件的入口执行方法必须是 "handle" 方法,
而且第一个参数是 "Request" 对象,第二个参数是一个闭包<?phpnamespace app\middleware;class Check
{public function handle($request, \Closure $next){if ($request->param('name') == 'think') {return redirect('index/think');}return $next($request);}
}
4.注册控制器中间件
- 控制器中间件必须使用中间件别名
- 在控制器中定义middleware属性
<?php
namespace app\controller;class Index
{// 注册控制器中间件protected $middleware = [// 对所有方法有效'auth',// 仅对hello方法和world方法有效'check' => ['only' => ['hello', 'world']],// 仅对create方法和save方法无效'check' => ['except' => ['create', 'save']],];
}
https://www.kancloud.cn/monday/thinkphp6/1441353
六,事件是什么,怎么使用?
七,容器是什么,怎么使用?
八,门面是什么,怎么使用?
九,服务是什么,怎么使用?
十,源码分析
十一,异常捕捉
try {file_get_contents('filename');throw new Exception('我是手动抛出来的');} catch (\Exception $e) {// 这是进行异常捕获return $e->getMessage();}
十二,其他
thinkphp6 swoole扩展http跨域补丁
/*跨域补丁开始*/
$origin = isset($req->header['referer']) ? $req->header['origin'] : '';
$allow_origin = array( //允许跨域的域名'http://localhost','http://localhost:8080','http://localhost:8081',
);
if(in_array($origin, $allow_origin)){//动态允许跨域$header['Access-Control-Allow-Origin'] = $origin;$header['Access-Control-Allow-Headers'] = 'Origin, X-Requested-With, Content-Type, Accept, Token';$header['Access-Control-Allow-Methods'] = 'GET,POST,PUT,DELETE,OPTIONS';$header['Access-Control-Allow-Credentials'] = 'true';$response->header($header);
}
/*跨域补丁结束*/
ORM关联查询一对一生成单条sql执行
withJoin
1.thinkphp6配置文件详解相关推荐
- mybatis mysql 配置文件_Mybatis配置文件详解(4)
本次主要来了解: MyBatis数据库配置文件SqlMapConfig.xml SQL映射配置中输入映射的配置 SQL映射配置中输出映射的配置 SQL映射配置中动态SQL语句的配置 1. SqlMap ...
- MyBatis复习笔记2:配置文件详解
配置文件详解 属性(properties) MyBatis可以使用 properties 来引入外部 properties 配置文件的内容 resource:引入类路径下的资源 url:引入网络路径或 ...
- vuecli 编译后部署_基于vue-cli 打包时抽离项目相关配置文件详解
前言:当使用vue-cli进行开发时时常需要动态配置一些设置,比如接口的请求地址(axios.defaults.baseURL),这些设置可能需要在项目编译后再进行设置的,所以在vue-cli里我们需 ...
- (转) SpringBoot非官方教程 | 第二篇:Spring Boot配置文件详解
springboot采纳了建立生产就绪spring应用程序的观点. Spring Boot优先于配置的惯例,旨在让您尽快启动和运行.在一般情况下,我们不需要做太多的配置就能够让spring boot正 ...
- CENTOS7 高性能Linux集群 通过yum进行 haproxy配置 !安装 !使用!HAProxy配置文件详解
Haproxy配置 永久修改名字:便于区分虚拟机! Haproxy:hostnamectl set-hostname haproxy Web1: hostnamectl set-hostname WE ...
- 用户管理 之 用户(User)和用户组(Group)配置文件详解
作者:北南南北 来自:LinuxSir.Org 摘要:本文详解用户(User)和用户组(Group)的配置文件,本文是<Linux 用户(User)和用户组(Group)管理概述>文档的关 ...
- 【ZooKeeper】配置文件详解
ZooKeeper的配置文件详解 zkServer.sh读取的默认配置文件是$ZOOKEEPER_HOME/conf/zoo.cfg.如果要用其它配置文件.如下传递配置文件参数: zkServer.s ...
- vsftpd配置文件详解
1.默认配置: 1>允许匿名用户和本地用户登陆. anonymous_enable=YES local_enable=YES 2>匿名用户使用的登陆名为ftp或an ...
- Web.config配置文件详解(新手必看)
Web.config配置文件详解(新手必看) 花了点时间整理了一下ASP.NET Web.config配置文件的基本使用方法.很适合新手参看,由于Web.config在使用很灵活,可以自定义一些节点. ...
最新文章
- Spring Boot骚操作-多数据源Service层封装
- 英特尔新任 CEO 的“开挂”人生
- 安卓开发30:AsyncTask的用法
- 怎么算 实体识别_大篷车流动摆摊卖日用品月赚万元,大商场生意冷清,实体店不好做...
- 【Linux系统编程】进程内存模型
- java怎样调用DLL方法
- 计算机科学英文杂志,Journal of Computer Science Technology
- php的工作模式CGI,FastCGI,PHP-CGI与PHP-FPM(转)
- 如何在Angular.JS中打开JSON / XML文件
- 动圈耳机振膜_动圈耳机和动铁耳机区别,以及选择
- 看好你的数据库连接字符串!
- 我的J2EE成功之路:实战Ajax,JSP,Struts 2, Spring,Hibernate
- iOS开发之超级签名-原理/机制/技术细节-完全解析(暂时还没有验证)
- 计算机网络第五次笔记
- Atiitt io的stream流的分类 目录 1. 流的优缺点 高性能但复杂	1 1.1. 字节数组更加简单,但性能差点	1 2. Io体系	1 2.1. 字符流 vs 字节流	2 2.2.
- 展望2025多媒体技术与应用趋势
- 解决Hash冲突的两种策略
- c++中调用c编写的动态链接库出现undefined reference to `xxx‘的解决方法
- linux系统可以安装浩辰CAD,浩辰CAD2021
- android studio出现,Android studio 出现缺少sdk的情况,如何解决?
热门文章
- android 坚挺通话广播_关于短信黑名单 BroadCast
- 对php的感受100字_【php实训心得】php心得体会
- ggplot2作图详解:标尺(scale)设置
- kmem 反编译linux内核_24小时学通Linux内核之如何处理输入输出操作
- plugin.super mysql_使用MySQ Clone Plugin部署MySQL Group Replication
- ubuntu怎么设置linux的ip地址,linux,ubuntu设置ip
- arduino数码管显示0到9_少儿Python程序第十二讲:单片机控制数码管
- OpenCV系统学习(基本了解完)
- Nacos教程_1 简介和安装
- 嵌入式系统——系统安全之常见病毒漏洞刷题整理