php设计模式 Singleton(单例模式)

复制代码 代码如下:

  <?php

  /**

  * 单例模式

  *

  * 保证一个类仅有一个实例,并提供一个访问它的全局访问点

  *

  */

  class Singleton

  {

  static private $_instance = null;

  private function __construct()

  {

  }

  static public function getInstance()

  {

  if(is_null(self::$_instance)) {

  self::$_instance = new Singleton();

  }

  return self::$_instance;

  }

  public function display()

  {

  echo "it is a singlton class function";

  }

  }

  // $obj = new Singleton(); // 声明不能成功

  $obj = Singleton::getInstance();

  var_dump($obj);

  $obj->display();

  $obj1 = Singleton::getInstance();

  var_dump(($obj === $obj1));