zoukankan      html  css  js  c++  java
  • 注册树模式

    通过注册树模式可以更加简单快捷的获取对象,在某个地方实例化了一个对象,可以将这个对象“保存”起来,用的时候只需要提供 保存对象的时候 的那个标识即可。

    举个例子:你有一个行李箱,因为某个原因,你暂时要去另外一个地方,行李暂时带着没什么用,也很麻烦,这时你可以考虑将行李存 到 行李寄存处,工作人员给一个凭证,只需要出示这个凭证就可以取行李或者告诉工作人员把行李扔了

    其实上面的例子已经很明白了。下面是实现的代码:

    <?php
    class A{ }
    
    class Register{
    	public static $obj=array();
    
    	public static function set($key,$value){
    		if($value){
    			self::$obj[$key]=$value;
    		} else {
    			echo "请指定注册的对象实例";
    			exit;
    		}
    	}
    
    	public static function get($key){
    		if(isset(self::$obj[$key])){
    			return self::$obj[$key];
    		} else {
    			echo "该对象未注册";
    			exit;
    		}
    	}
    
    	public static function delete($key){
    		if(isset(self::$obj[$key])){
    			unset(self::$obj[$key]);
    		} else {
    			echo "该对象未注册";
    			exit;
    		}
    	}
    }
    
    $a=new A;
    Register::set("a_obj",$a);
    $test=Register::get("a_obj");
    var_dump($test);			//object(A)#1 (0) { }
    
    $test=Register::get("b_obj");	//该对象未注
    
    ?>
    

      

  • 相关阅读:
    Algs4-2.1.23纸牌排序
    python字符串加颜色区别
    python学习之字典
    python学习之while语句
    python学习之字符串变量
    python学习之列表语法
    python简单实现用户表单登录
    python学习之安装模块
    python学习之认识字符串
    python学习之for语句
  • 原文地址:https://www.cnblogs.com/-beyond/p/8150235.html
Copyright © 2011-2022 走看看