php反射的使用

2022-03-22 09:52:48 字數 706 閱讀 8966

說到反射reflectionclass大家可能都知道了,通過將乙個類的各種屬性封裝一下供使用者使用。

我一開始的時候很是疑惑,既然類的名字都知道了為啥還要用反射,網上別人給的例子讓我看來也純粹是為了反射而反射,後來看到kohana框架的原始碼中對反射的使用,我了解了,一句話:反射可以用來得到一些你從類的名字中獲取不到的屬性。

**片段:

$extension = 'class '.$class.' extends '.$class.'_core ';

// start class analysis

$core = new reflectionclass($class.'_core');

if ($core->isabstract())

//var_dump("extension:".$extension);

// transparent class extensions are handled using eval. this is

// a disgusting hack, but it gets the job done.

eval($extension);

這裡獲得了這個類是不是乙個抽象類這個屬性。當然還有其他的屬性我們可以用

可以在php反射官方文件中得到。

總結下來就是,如果你需要例項化乙個類,除了類的名字外你還想知道其他的關於這個類的屬性資訊,那麼你應該用反射來得到。

PHP的反射機制

php5新增了一項新的功能 reflection。這個功能使得phper可以reverse engineer class,inte ce,function,method and extension。通過php 就可以得到某object的所有資訊,並且可以和它互動。反射是什麼?它是指在php執行狀態中...

PHP的反射機制

php5新增了一項新的功能 reflection。這個功能使得phper可以reverse engineer class,inte ce,function,method and extension。通過php 就可以得到某object的所有資訊,並且可以和它互動。反射是什麼?它是指在php執行狀態中...

PHP的反射機制

php5新增了一項新的功能 reflection。這個功能使得phper可以reverse engineer class,inte ce,function,method and extension。通過php 就可以得到某object的所有資訊,並且可以和它互動。反射是什麼?它是指在php執行狀態中...