码迷,mamicode.com
首页 > Web开发 > 详细

PHP设计模式——单例模式

时间:2016-02-23 18:55:34      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:

<?php
/**
 * 单例模式
 * 通过提供对自身共享实例的访问,单例模式用于限定特定对象只能被创建一次的情况。
 * 
 * 应当阻止创建某个对象的多个实例时,我们最好用单例模式来创建这个对象。
 */
class Single{
    protected static $_instance = NULL;
    protected $_handle = NULL;
    //方法前加final,则方法不能被重写;类前加final,则类不能被继承。
    final protected function __construct(){
        //连接数据库
        $dbName = ‘design‘;
        $this->handle = mysql_connect(‘localhost‘,‘root‘,‘‘);
        mysql_select_db($dbName,  $this->handle);
        echo $dbName.‘数据库连接成功<br>‘;
    }
    //禁止克隆对象
    final protected function __clone() {
    }
    public static function getInstance() {
        if(!self::$_instance instanceof self){
            self::$_instance = new self;
        }
        return self::$_instance;
    }
}

$a = Single::getInstance();
$b = Single::getInstance();
if($a === $b){
    echo ‘是同一对象‘;
}else{
    echo ‘不是同一对象‘;
}

 

PHP设计模式——单例模式

标签:

原文地址:http://www.cnblogs.com/tlxma/p/5210681.html

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