开发过程中,我们经常会与接口打交道,有的时候是调取别人网站的接口,有的时候是为他人提供自己网站的接口,但是在这调取的过程中都离不开签名验证。我们在设计签名验证的时候,请注意要满足以下几点:可变性:每次的签名必须是不一样的。时效性:每次请求的时效,过期作废等。唯一性:每次的签名是唯一的。完整性:能够对传入数据进行验证,防止篡改。这里介绍一种方式,是目前国内互联 ......
392
0
0
2022-08-12
PHP 现在名声很糟糕,因为它曾经是“可怕”的。本文试着回答一些常见的关于 PHP 的断言,目的是向非技术人员解释,PHP 并不像许多人所说的那么糟糕。1、它是不是鼓励糟糕的实践?不再是了。过去,许多开发者被书本教授非常糟糕的实践,因此 PHP 代码的质量非常差。PHP 曾经还允许你做一些非常奇怪的事情,使得它非常容易构建,但维护起来却是一场噩梦。这些不再是 ......
333
0
0
2022-08-10
服务端<?php $server = new Swoole\WebSocket\Server("0.0.0.0", 9501); $server->on('open', function (Swoole\WebSocket\Server $server, $request) { echo "server: handshake suc ......
475
0
0
2022-08-09
边缘缓存模式 - Cache-Aside Pattern描述 从存储器中需要的数据加载到缓存。背景和问题 应用程序使用缓存能优化重复访问存储器数据的问题。但是缓存和存储器的数据可能不一致。解决方案读缓存 先读cache,再读db。 1. 如果cache里有数据,直接返回数据。 2. 如果cache里没有数据,那么访问db,并且把数据写到缓存中。更新 ......
465
0
0
2022-08-08
组合实体模式 - Composite Entity Pattern说明 组合实体模式用在持久化机制中。当更新一个组合实体时,内部依赖对象也会自动更新。理解 各个细颗粒对象组合成一个粗颗粒对象,细颗粒对象和粗颗粒对象又可以组合成组合实体。 组合实体的内部状态变化也会引起各个颗粒的状态变化。 通常使用在对象持久化中。结构中包含的角色组合实体(Compos ......
422
0
0
2022-08-08
业务代表模式 - Business Delegate Pattern解释在表示层和业务层之间添加了一个抽象层。用于解耦表示层和业务层。结构中包含的角色客户端(Client) - 表示层代码。在MVC里面就是V层。业务代表类(BusinessDelegate)抽象业务服务(BusinessService)具体业务服务(ConcreteBusinessServi ......
383
0
0
2022-08-08
数据访问对象模式 - Data Access Object Pattern定义对数据源的访问与存储进行封装,提供一个数据访问对象类负责对存储的数据进行管理和操作,规范数据存储格式。 数据访问对象模式,简称DAO模式。结构中包含的角色数据访问对象接口(Data Access Object Interface) ModelDAO 抽象操作数据库的方法数据访问对 ......
429
0
0
2022-08-08
前端控制器模式 - Front Controller Pattern定义提供一个集中的请求处理机制,所有的请求都将由一个单一的处理程序处理。结构中包含的角色前端控制器(Front Controller)调度器(Dispatcher)视图(View)最小可表达代码class View { public function show($request ......
406
0
0
2022-08-08
拦截过滤器模式 Intercepting Filter Pattern说明拦截过滤器模式,简称拦截器模式,是责任链模式的一种衍生模式。用于对应用程序的请求或响应做一些预处理/后处理。结构中包含的角色Filter(抽象处理者)RegularFilter(具体处理者)FilterChain(责任链)FilterManager(链条管理者)最小可表达代码inter ......
401
0
0
2022-08-08
MVC模式 - Model-View-Controller定义MVC模式是指 Model-View-Controller(模型-视图-控制器)模式。结构中包含的角色Model(模型)View(视图)Controller(控制器)最小可表达代码class Model { private $name; public function ......
362
0
0
2022-08-08
依赖注入 - Dependence Inversion - DI定义依赖注入是指不是由内部生产(初始化、构造函数 __construct 中通过工厂方法、自行手动 new 的),而是由外部以参数或其他形式注入的。解释简单来说就是把依赖对象的实例化过程交给第三方(IOC容器)来实现。控制 : 依赖对象实例化的控制。正向 : 我们在对象中主动获取依赖对象。反向 ......
461
0
0
2022-08-07
模块开发模块开发介绍在开发模块之前,请在模块市场自行安装《开发示例程序》,该示例中涵盖了几乎所有模块开发规范和技巧。开发示例程序: modstart.com/m/Demo开发示例程序会不断更新,请随时查看最新的开发示例程序。模块开发入门第一步,下载模块开发助手模块开发助手可以极大效率的提高模块开发效率,通过 modstart.com/m/ModuleDeve ......
510
0
0
2022-08-07
传输对象模式 - Transfer Object Pattern设计的原则和思想在传输对象中填充数据,然后把对象序列化后传输到其他应用。结构中包含的角色业务对象(Business Object)传输对象(Transfer Object)最小可表达代码class Business { private $name; public fun ......
416
0
0
2022-08-07
函数组合和集合管道模式 - Collection Pipeline定义 集合管道是将一些计算转化为一系列操作,每个操作的输出结果都是一个集合,同时该结果作为下一个操作的输入。在函数编程中,通常会通过一系列更小的模块化函数或运算来对复杂运算进行排序,这种方式被称为函数组合。结构中包含的角色Collection 集合对象 最小可表达代码 - Larave ......
340
0
0
2022-08-07
委托模式 - Delegation定义 有两个对象参与(两个对象协同)处理同一个请求,接受请求的对象将请求委托给另一个对象来处理。 委托模式属于行为型模式。许多其他的模式,如状态模式、策略模式、访问者模式本质上是在更特殊的场合采用了委托模式。设计的原则和思想解耦委托者与被委托者。不变部分是委托者和被委托者,变化部分是委托者与被委托者之间的协同方式 ......
411
0
0
2022-08-07