zoukankan      html  css  js  c++  java
  • PHP设计模式之单例模式

    单例模式(Singleton pattern)是一种创建型模式,它会限制应用程序,使其只能创建某个类类型的单一实例。举例来说,一个Web站点将会需要一个数据库连接对象,但是应该有且只有一个,因此我们需要使用单例模式来实现。

    eg:

    <?php
    class Config{
        static private $_instance = null; //确保对于一个特定类来说只存在一个单一的实例
        private $_settings = array();
        
        private function __construct(){}//防止new出来一个新实例
        private function __clone(){} //防止clone来创建一个新实例
    
        static funcitn getInstance(){
              if(self::$_instance == null){
                  self::$_instance = new Config();
              }
              return self::$_instance;
        }
    
        function set($index, $value){
             $this->_settings[$index] = $value;
       }
    
        function get($index){
              return $this->_settings[$index];
        }
    }
    ?>

    使用Config类

    创建config类

    $CONFIG = Config::getInstance();

    如果这个对象是这个类的第一个对象,那么将会创建一个新的类的实例,并且赋值给内部的私有属性$_instance,并且返回结果。否则使用同一个实例返回

  • 相关阅读:
    回溯算法之素数环
    回溯算法之迷宫问题
    回溯算法之0-1背包问题
    贪心算法之搬桌子问题
    贪心算法之背包问题
    动态规划之收集苹果
    动态算法
    c#数和二叉树
    c# 排序算法
    c#栈的习题2
  • 原文地址:https://www.cnblogs.com/ShowJoy/p/3747935.html
Copyright © 2011-2022 走看看