PHP的单例模式有什么用?跟直接用类本身有什么区别呢?

查看:171
本文介绍了PHP的单例模式有什么用?跟直接用类本身有什么区别呢?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

PHP的单例模式是为了避免重复创建对象带来的资源消耗,那么跟直接用类名::静态成员变量 ,类名::静态成员属性有什么区别呢?
另外,php是以页面为执行为执行单位的,执行完一个页面后该页面就从内存里被销毁,那么如何在不借助数据库的前提下,保存一个生存期等于整合程序执行期的变量呢?

解决方案

单例模式可以确保这个类在全局只能有一个实例,因为它的实例是由自己保存,在类的外部也无法对该类进行实例化。而题主所说的其他方法都不容易达到这个目的。

第二个问题说php是以页面为执行单位的,我理解意思应该是以请求为执行单位的吧?每次请求过来,php解释器会解释源代码而后执行,如果需要保存这种跨请求的变量,可以使用session保存起来,对于类实例这样的变量,也可以先序列化再保存到session中,下次请求只需要反序列化就可以了。

这篇关于PHP的单例模式有什么用?跟直接用类本身有什么区别呢?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆