//单例模式的类Lock
class Lock
{
//静态属性$instance
static private $instance = NULL;
//一个普通的成员属性
private $switch = 0;
//getInstance静态成员方法
static function getInstance()
{
//如果对象实例还没有被创建,则创建一个新的实例
if (self::$instance == NULL)
{
self::$instance = new Lock();
}
//返回对象实例
return self::$instance;
}
//空构造函数
private function Lock()
{
}
//空克隆成员函数
private function __clone()
{
}
//设置$switch的函数,如果$switch为0则将其设置成1,否则将其设置成0
function setLock()
{
if($this->switch==0) //如果属性switch等于0,则将其设置为1
$this->switch = 1;
else //如果属性switch等于1,则将其设置为0
$this->switch = 0;
}
//获取$switch状态
function getLock()
{
//返回switch属性
return $this->switch;
}
}
//调用单例,设置$switch
Lock::getInstance()->setLock();
//判断开关状态
if(Lock::getInstance()->getLock() == 0) //如果属性switch等于0,则输出开关状态为“关”
echo "开关状态:关";
else //如果属性switch等于1,则输出开关状态为“开”
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zhuzhao/archive/2009/03/07/3964381.aspx
分享到:
相关推荐
在PHP中,单例模式常用于管理共享资源,如数据库连接或全局配置,以优化性能并提供统一的访问入口。 单例模式的实现通常包含以下几个关键点: 1. **构造函数私有化**:通过将构造函数设为`private`,阻止外部通过`...
单例模式概念 单例模式是指整个应用中类只有一个对象实例的设计模式。 单例模式的特点 一个类在整个应用中只有一个实例 类必须自行创建这个实例 必须自行向整个系统提供这个实例 php中使用单例模式的原因 我用php大...
在PHP开发中,单例模式是一种非常重要的设计模式。它规定一个类仅有一个实例,并提供一个全局访问点来获取这个实例。单例模式的应用场景包括:线程池、缓存、日志对象、对话框、打印机、数据库操作、显卡驱动程序等...
在PHP编程中,设计模式是一种常见的软件...以上就是PHP中单例模式、工厂模式和观察者模式的基本概念、应用场景和实现方式。这三种模式在实际开发中都有广泛的应用,理解并掌握它们对于提升代码质量和可维护性至关重要。
- **示例**:以Zend Framework为例,其中的FrontController就是一个很好的单例模式应用案例,用于管理全局配置信息。 ##### 2.3 便于调试与日志记录 - **集中处理日志**:在单个页面请求过程中,所有相关的代码...
如模式名称,单例只能实例化一次,只有一个对象,多例模式可以多次实例化。基于Singleton的特性,我们经常用Singleton配置应用程序并定义应用程序中可能随时访问的变量。但有时并不推荐使用Singleton,因为它生成了...
### PHP与MVC开发模式详解 #### MVC设计模式概述 MVC,即Model-View-Controller,是一种广泛应用于软件工程,尤其是Web应用开发中的设计模式。该模式最早可追溯至20世纪70年代,旨在解决软件开发中的复杂性和耦合...
8. **模板引擎与MVC模式**:学习如何使用PHP构建模板引擎,实现视图层与逻辑层的分离,以及理解Model-View-Controller(MVC)设计模式,有助于编写更清晰、可维护的代码。 9. **安全性**:防止SQL注入、XSS攻击等...
从基础到高级,读者可以逐步学习单例模式、工厂模式、观察者模式、装饰器模式、策略模式、代理模式等经典设计模式。每个章节都可能包含理论解释、代码示例以及实际应用场景,帮助读者将理论知识转化为实际编程技能。...
总结来说,通过学习单例模式等设计模式,PHP开发者可以深入理解面向对象编程的高级特性,从而编写出更加高效、稳定、可维护的代码。单例模式只是众多设计模式中的一种,熟练掌握设计模式对于任何使用面向对象编程的...
5. 设计模式:学习单例模式、工厂模式、观察者模式等常见设计模式。 七、PHP框架与应用 介绍常见的PHP框架,如Laravel、Symfony、Yii等,理解框架的MVC模式,提高开发效率和代码质量。 八、性能优化与安全实践 1. ...
2. 私有化`clone`函数:防止对象被复制,保证单例的唯一性。 3. 静态成员变量:存储单例实例,确保其全局可访问。 4. 公共静态方法:作为访问单例实例的入口,通常命名为`getInstance()`。 五、PHP实现数据库连接的...
建造者模式(Builder)是一种常用的软件设计模式,它在PHP中同样适用,用于将复杂对象的构造过程与表示方式分离。这样,相同的构造过程可以产生不同的表示形式,使得代码更加模块化,易于维护和扩展。在这个模式中,...
书名:《PHP开发实战1200例(第I卷)》(清华大学出版社.潘凯华.刘中华) PDF格式扫描版,全书分为5篇15章,共899页。2011年1月出版。 全书压缩打包成2部分,这是第2部分。 注:本系列图书的第I、II卷再版时均相应改名...
双重检查单例模式是对饿汉式单例模式的改进,它可以解决饿汉式单例模式的缺陷,例如线程安全问题。 在计算机系统中,线程池、缓存、日志对象、对话框、打印机、显卡的驱动程序对象常被设计成单例。Java的Struts、...
这样可以保证单例类实例的唯一性不会因为克隆而被破坏。 为什么要使用PHP单例模式? 1. 资源优化:在PHP中,尤其是在数据库应用方面,如果每次需要使用数据库连接时都创建一个新的连接对象,将会耗费大量资源。...
《PHP开发实战1200例(第Ⅰ卷)]01》是一部全面深入讲解PHP编程实践的著作,旨在帮助读者通过丰富的实例掌握PHP语言的核心技术和应用技巧。本部分主要涉及初阶PHP开发,包括基础语法、变量、数据类型、控制结构、...