常用知识
-
05-312022
ThinkPHP6的空控制器
我们在ThinkPHP6的官方手册中搜索“空控制器”关键字,就可以找到空控制器的章节内容。我们先看看空控制器的官方定义:空控制器的概念是指当系统找不到指定的控制器名称的时候,系统会尝试定位当前应用下的空控制器( Error )类,利用这个机制我们可以用来定制错误页面和进行URL的优化。也就是说我们可以用空控制器来定制我们的错误页面。手册中是以单应用举例,但是实际情况我们项目大部分都是多应用,所以接 -
05-312022
Thinkphp6 获取请求的模块名、类名和方法名
获取模块名:1、普通方式获取$module=app('http')->getName();2、多应用模式下获取//目前多应用下用了第一种方式,还未发现问题,以后再更新$module=\think\facade\App::initialize()->http->getName();获取类名$class=request()->controller() -
03-232023
如何保护你的数据库主键 - Hashids扩展
谈谈保护数据表主键的必要性表的主键一般是自增有序的Int类型数字,在项目中非常容易暴露出真实的项目ID,被爬虫抓取,被恶意采集也有可能被人猜到项目的数据量。作为开发者,这是应极力避免。Hashids是一个小型PHP库,用于从数字生成短小、唯一、非连续标识符。当您不想向用户公开数据库数字标识时,请使用它。Hashids支持通过生成出来的标识符进行解码为原数字,还支持加盐加密,不会因为大家都用这个类库