[PHP设计模式]一、几种基本的设计模式

一、工厂模式

工厂方法或者类生成对象,而不是在代码中直接new

优点:生成的对象如果需要变化,只需要在类里面进行修改。避免多个地方生成对象,都需要对生成对象的参数修改。

核心代码:

<?php
namespace TT

class Factory{
	function createDataBase()
	{
		$db = new Database;
		return $db;	
	}
}

啥意思我也懒得解释。

二、单例模式

使一个类只能实例化一次。

优点:避免多次实例化造成对资源的浪费。

核心代码:

<?php
namespace TT

class Database
{
	protected $db;
	// 构造方法私有化,不让类文件以外的地方去实例化
	private function __construct()
	{
	
	}
	
	static function getInstance()
	{
		if(self::$db) {
			return self::$db;
		} else {
			self::$db = new self();
			return self::$db;
		}
	}
}

三、注册器模式

全局共享和交换对象

优点:将对象注册到全局的树上,使用的时候,可以直接获取。

核心代码:

<?php
namespace TT

class Register()
{
	protected static $objects;
	function set($alias, $object)
	{
		self::$objects[$alias] = $object;
	}
	
	function _unset($alias)
	{
		unset(self::$objects[$alias]);
	}
	
	function get($alias) 
	{
		return self::$objects[$alias];
	}
}	

下一页

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值