设计模式---3种基本模式
1、工厂模式
使用工厂方法或者类生成对象,而不是在代码中直接new。这样做可以更好地管理对象。
2、单例模式
单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。
<?php //参考慕课网教程和下面的评论 namespace Imooc; class Database { private static $db; private $dbValue; //单例模式 private function __construct() { } //私有化__clone,防止被克隆 private function __clone() { } public static function getInstace() { if(self::$db){ return self::$db; }else{ self::$db = new self(); return self::$db; } } public static function index() { var_dump('private self'); } public function setValue($data) { $this->dbValue = $data; } public function getValue() { return $this->dbValue; } }
外部只能通过getInstace新建对象。
3、注册树模式