請問老師,這種寫法是單例模式嗎?
public?static?function?deal($errno,$errmsg,$filename,$line,$vars){
????????$self=new?self($errmsg,$filename,$line,$vars);
????}
public?static?function?deal($errno,$errmsg,$filename,$line,$vars){
????????$self=new?self($errmsg,$filename,$line,$vars);
????}
2021-07-03
舉報
2021-09-13
? ?private static $instance = null;
? ?// 首先,將構造方法封裝私有化,禁止外部實例化對象
? ?private function __construct($errmsg,$filename,$line,$vars)
? ?{
? ?}
? ?// 靜態方法,用于得到實例化的對象
? ?public static function deal($errno,$errmsg,$filename,$line,$vars)
? ?{
? ? ? ?// 如果已有實例化的對象,直接返回
? ? ? ?if(empty(self::$instance)){
? ? ? ? ? ?self::$instance = new self($errmsg,$filename,$line,$vars);
? ? ? ?}
? ? ? ?return self::$instance;
}