码迷,mamicode.com
首页 > 其他好文 > 详细

设计模式 之 单例模式

时间:2015-10-09 22:39:14      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:

单例模式思路:

  私有化构造方法: 防止实例化

  私有化克隆方法: 防止克隆

  私有化静态属性: 保存对象

  公有化静态方法: 获取对象

 

代码:

<?php
//设计模式:单例模式

class Singleton
{
    //私有化静态属性:用于保存对象
    private static $obj;

    //私有化构造方法
    private function __construct(){}

    //公有化静态方法:用于实例化对象
    public static function getObj()
    {
        //判断对象是否存在
        if(!is_object(self::$obj))
        {
            //不存在:实例化对象
            self::$obj = new Singleton();

            //返回对象
            return self::$obj;

        }
    }

    //私有化克隆方法
    private function __clone(){}

}

$p1 = Singleton::getObj();

var_dump($p1);

 

设计模式 之 单例模式

标签:

原文地址:http://www.cnblogs.com/lesuso/p/4865185.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!