php设计模式之注册模式
php设计模式之注册模式
别人说我名字很长 发表于2年前
php设计模式之注册模式
  • 发表于 2年前
  • 阅读 11
  • 收藏 0
  • 点赞 1
  • 评论 0
<?php

namespace Tools;

/*注册模式
当你有一组全局对象被全局访问时可能就需要用到注册者模式 (registry),它 提供了在程序中有条理的存放并管理对象 (object)一种解决方案。一个“注册模式”应该提供get() 和 set()方法来存储和取得对象(用一些属性key)而且也应该提供一个isValid()方法来确定一个给定的属 性是否已经设置。 
注册模式通过单一的全局的对象来获取对其它对象的引用 实例:
*/
class Register {
	
	protected static $data = array();

	public static function isValid($key){
		return array_key_exists($key, self::$data);
	}
	
	public static function get($key){
		return self::$data[$key];
	}
	
	public static function set($key,$value){
		self::$data[$key] = $value;		
	}

	public static function _unset($key){
		unset(self::$data[$key]);
	}
}

//写入
\Tools\Register::set("person",array("name"=>"zhangsan","sex"=>1,"age"=>25));

//读取
$person = \Tools\Register::get("person");
print_r($person);

//删除
\Tools\Register::_unset("person");

//是否存在
var_dump(\Tools\Register::isValid("person"));



共有 人打赏支持
粉丝 53
博文 227
码字总数 83765
×
别人说我名字很长
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: