php註冊樹詳解

无忌哥哥
發布: 2023-04-01 21:40:01
原創
2296 人瀏覽過

 * 註冊樹:其實就是建立一個物件集,也叫物件池,是用陣列來進行儲存的

//先宣告三個類別,一會丟進物件樹上

class Demo1 {}
class Demo2 {}
class Demo3 {}
登入後複製

//宣告物件註冊樹類別

class Register
{
    //静态属性中保存着所有已经挂载到树上的对象
    public static $objs = [];
    
    //将对象挂载到树上
    public static function set($index,$obj)
    {
        self::$objs[$index] = $obj;
    }
    
    //取出对象使用
    public static function get($index)
    {
        return self::$objs[$index];
    }
    
    //已经无效的对象,及时销毁,节省资源
    public static function del($index)
    {
        unset(self::$objs[$index]);
    }
}
登入後複製

//先將三個類別實例化後掛載到物件樹上

Register::set('demo1',new Demo1);
Register::set('demo2',new Demo2);
Register::set('demo3',new Demo3);
登入後複製

//偵測是否上樹?

var_dump(Register::$objs);
echo &#39;<hr>&#39;;
echo &#39;<pre class="brush:php;toolbar:false">&#39;.print_r(Register::$objs,true).&#39;
'; echo '
';
登入後複製

//用註冊類別的get方法查看

var_dump(Register::get(&#39;demo2&#39;));
登入後複製
登入後複製

//刪除物件池中的某個實例物件

Register::del(&#39;demo2&#39;);
登入後複製

//再次查看demo2物件,已經不能被查看了,因為被銷毀了

var_dump(Register::get(&#39;demo2&#39;));
登入後複製
登入後複製

以上是php註冊樹詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板