* 註冊樹:其實就是建立一個物件集,也叫物件池,是用陣列來進行儲存的
//先宣告三個類別,一會丟進物件樹上
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 '<hr>'; echo '<pre class="brush:php;toolbar:false">'.print_r(Register::$objs,true).''; echo '
//用註冊類別的get方法查看
var_dump(Register::get('demo2'));
//刪除物件池中的某個實例物件
Register::del('demo2');
//再次查看demo2物件,已經不能被查看了,因為被銷毀了
var_dump(Register::get('demo2'));
以上是php註冊樹詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!