php 設計模式之單類模式

直接上代碼吧!php

 1 <?php
 2 class Singleton
 3 {
 4     private static $_instance = null;
 5 
 6     private function __construct()
 7     {
 8     }
 9 
10     public static function getInstance()
11     {
12         if (self::$_instance === null) {
13             self::$_instance = new self();
14         }
15 
16         return self::$_instance;
17     }
18 }
19 
20 $obj1 = Singleton::getInstance();
21 $obj2 = Singleton::getInstance();
22 var_dump($obj1);
23 var_dump($obj2);
24 ?>

#1是類id,當打印$obj1 和 $obj2 的id是同樣就表示只實例化了一個對象測試

本身在測試單類模式的時候,若是不是經過Singleton::getInstance()的方法而是用new 的方法的話會報錯spa

 

相關文章
相關標籤/搜索