-
面向对象和设计模式(十七)装饰器模式——PHP语言实现
发布时间:2023-02-24 20:17一、装饰器的使用场景 装饰器可以在不改变原始类(又称为被装饰类)的情况下,通过在装饰器类中添加扩展功能的方式来给原始类附加额外功能,并且通过自由组合多个装饰器可以为原始类定制化添加多个功能。
-
面向对象和设计模式(十六)桥接模式——PHP语言实现
发布时间:2023-02-11 10:39一、桥接模式概念网上对桥接模式的解释有两种。第一种理解方式是将抽象和实现解耦,让它们可以独立变化。说具体一点就是将抽象和实现完全分开,“抽象”指的并非“抽象类”或“接口”,而是被抽象出来的一套“类库”
-
面向对象和设计模式(十五)代理模式与动态代理模式——PHP语言实现
发布时间:2023-02-09 18:54一、代理模式的使用场景代理模式可以在不改变原始类(或叫被代理类)代码的情况下,通过引入代理类来给原始类附加额外功能。直接上例子,假如我们要给用户模块的登录和注册接口添加一个性能告警的小功能,这个功能要
-
PHP设计模式篇(六) Trait特性——类方法的组合模式
发布时间:2022-11-12 10:33一、什么是Trait 我们知道PHP类是不能多继承的,Trait就是类似于多继承的一种代码复用机制,使开发人员能够自由地在不同层次结构内独立的类中复用 method。 实际上,这里说Tra
-
PHP常用扩展(二) PHP用户级缓存——APCu
发布时间:2022-04-20 11:41一、APC 可选PHP缓存APC,全称是Alternative PHP Cache,官方翻译叫”可选PHP缓存”。它为我们提供了缓存和优化PHP的中间代码的框架。 APC的缓存分两部分:系统缓存和用户
-
PHP常用扩展(一) PHP字节码缓存——Opcache
发布时间:2022-04-20 09:38一、什么是opcacheOpcache是一种通过将PHP脚本预编译的字节码(Operate Code)存放在共享内存中,避免每次请求都要加载和解析PHP脚本,解析器可以直接从共享内存读取已经缓存的字节
-
PHP设计模式篇(五) 错误Error和异常Exception处理
发布时间:2022-03-16 15:08- 错误和异常PHP7中,错误是指 Error 类,异常是指 Exception 类,他们都继承自 Throwable 类。Exception和Error的不同点:a. 产生方式不同和性质不同Exce
-
PHP设计模式篇(四) 门面模式
发布时间:2022-03-16 14:31门面模式的作用是使一个全部都是非静态方法的类无需实例化就能直接通过静态方式调用该类里面的方法(好无聊好鸡肋...)。 以TP5的门面模式为例: Tp5的门面基类在\th
-
PHP设计模式篇(三) 注册树模式 + 反射 实现依赖注入容器
发布时间:2022-03-15 21:25- 注册树模式 注册树模式将对象实例注册到一个全局的对象树上,业务层需要的时候可以直接从对象树取出该对象使用,使业务层无需在业务代码中new一个对象,造成两个对象耦合。 &nbs
-
PHP设计模式篇(二) 类自动加载
发布时间:2022-03-15 20:54php的__autoload魔术方法和spl_autoload_register()可以做到在不手动引入类文件的情况下自动加载类。- 魔术方法__autoload()__autoload()方法的用法
-
PHP设计模式篇(一) 单例模式和工厂模式
发布时间:2022-03-15 20:35- 单例模式单例模式的适用场景是复用唯一的单实例,例如创建数据库连接只创建一个唯一连接,之后所有sql都复用该连接。单例模式如何实现:1、需要一个private的构造函数;2、需要一个静态成员保存类的
-
PHP使用PDO操作mysql
发布时间:2020-01-19 16:181.pdo连接数据库(初始化):$pdo=new PDO("mysql:host=localhost;dbname=库名","用户名","密码");2.执行增删改:$res=$pdo->exec
-
PHP基础(十八) Session和Cookie会话控制
发布时间:2019-12-08 21:48HTTP是无状态的协议,所以不能维护两个事物间的状态。但一个用户在请求一个页面以后再请求另一个页面时,需要让服务期知道这是一个用户。总共有3种数据传递方式。 超链接或者header()函数等重定向方
-
PHP基础(十七) 使用PHP操作Mysql
发布时间:2019-12-07 18:23PHP访问MySQL数据库服务器是通过安装相应的扩展模块完成的,本章重点是介绍使用mysqli扩展模块中的函数去访问MySQL。如果对MySQL不了解的朋友可以查看本站中MySQL的文章:Mysql基
-
PHP基础(十六) 使用PHP进行文件上传和下载
发布时间:2019-12-05 16:34使用PHP进行文件上传和下载 1 文件上传 客户端文件上传的form表单: <html> <head><title>文件上
-
PHP基础(十五) PHP操作文件系统(下)
发布时间:2019-11-26 15:25续上一节文件的打开与关闭fopen -- 打开文件或者 URL 语法:resource fopen ( string filename, string mode [, b
-
PHP基础(十四) PHP操作文件系统(上)
发布时间:2019-11-26 15:17文件类型 在程序运行时,程序本身和数据一般都存在内存中,当程序运行结束后,存放在内存中的数据被释放。 如果需要长期保存程序运行所需的原始数据,或程序运行产生的结果,就必须以文件形式存储到外
-
PHP基础(十三) GD库——图像操作
发布时间:2019-11-26 15:03PHP 不仅限于只产生 HTML 的输出,还可以创建及操作多种不同格式的图像文件。PHP提供了一些内置的图像信息函数,也可以使用GD函数库创建新图像或处理已有的图像。目前GD2库支持GIF、JPEG、
-
PHP基础(十二) PHP的日期和时间
发布时间:2019-11-26 14:49UNIX时间戳Unix 时间戳 :自从 Unix 纪元(格林威治时间 1970 年 1 月 1 日 00:00:00)到当前时间的秒数,是一个十位数的整数 相关函数:time( ): 函数返
-
PHP基础(十一) PHP错误处理
发布时间:2019-11-26 14:11PHP程序的错误发生一般归属于下列三个领域:语法错误:语法错误最常见,并且也容易修复。如:代码中遗漏一个分号。这类错误会阻止脚本的执行。运行时错误:这种错误一般不会阻止PHP脚本的执行,但会阻止当前要