昨天工做没那么忙,因此多谢了点跟模式相关的代码php
单例模式,保证在一个进程中一个类只有一个对象设计模式
<?php //单例模式:一个进程中始终某一个类只有一个对象存在 final class SignalOnly { protected static $instance =null; public static function getInstance(){ if(empty(self::$instance)){ //延迟绑定,简单的说就是找到方法的最后的调用者 //self::$instance = new static(); self::$instance = new static(); } return self::$instance; } private function __construct(){ } private function __clone(){ } } var_dump(SignalOnly::getInstance()); //能够继承子类的设计模式 class Signal { protected static $instance =null; public static function getInstance(){ if(empty(self::$instance)){ //延迟绑定,简单的说就是找到方法的最后的调用者 //self::$instance = new self(); self::$instance = new static(); } return self::$instance; } protected function __construct(){ } protected function __clone(){ } } class SignalSon extends Signal{ } var_dump(SignalSon::getInstance(),Signal::getInstance());