單例模式小示例
阿新 • • 發佈:2018-10-13
get obj 模式 () else ont utf-8 self 克隆 header("Content-type:text/html;charset=utf-8");
// final修飾類,則Single類不能被子類繼承
final class Single{
// 聲明私有的靜態變量
private static $instance;
// final修飾類,則Single類不能被子類繼承
final class Single{
// 聲明私有的靜態變量
private static $instance;
// 構造函數 private function __construct(){} // 獲取單例對象函數 static public function getInstance(){ if(!is_null(self::$instance)){ return self::$instance; }else{ return self::$instance = new Single(); } } // 禁止對象的克隆,clone關鍵字使用時會報錯 private function __clone(){ }
}
$obj1 = Single::getInstance();
var_dump($obj1);
$obj2 = Single::getInstance();
var_dump($obj2);
// 這裏會報錯
$obj3 = clone $obj2;
var_dump($obj3);
單例模式小示例