单例模式

php类设置为单例模式有3个步骤:

1.构造方法私有化,不能在类外部使用new 关键字生成类对象;

2.设置一个私有的静态属性,保存类的对象;

3.设置一个私有的静态方法,来生成类的唯一对象;

简单代码结构如下:

php

    //单例模式:就是一个类只能生成唯一的一个对象
    class Book{
        private static $instance;

        private function __construct()
        {

        }

        public static function getInstance()
        {
           if(empty(self::$instance)){
               self::$instance = new self;
               return self::$instance;
           }
           return self::$instance;
        }
    }

    $obj1 = Book::getInstance();
    $obj2 = Book::getInstance();

    if($obj1 === $obj2){
        echo '相同对象';
    }else{
        echo '不同对象';
    }
php单例模式

你可能感兴趣的:(单例模式)