2009-09-03 15 views

答えて

6

オブジェクト変数を一覧表示するのにget_object_varsを使用し、特定のクラスのメソッドを一覧表示するにはget_class_methodsを使用できます。

+0

これは魔法の仕組みでは機能しません。 – OIS

12
Reflection::export(new ReflectionObject($Yourobject)); 
11

(APIは非常によく文書化されていないようだが)これを行うには、リフレクションAPIのReflectionClass::getPropertiesReflectionClass::getMethodsメソッドを使用することができます。 PHPリフレクションは、実行時オブジェクトではなく、コンパイル時の情報のみを反映します。クエリ結果にランタイムオブジェクトを含めたい場合は、get_object_varsget_class_vars、およびget_class_methodsの関数を使用するのが最善です。 get_object_varsととの違いは、前者が特定のオブジェクトのすべての変数(実行時に動的に追加される変数を含む)を取得し、後者はクラス内で明示的に宣言された変数のみを取得することです。

+0

非常に有用で完全な答え、ありがとう! +1 –

+0

「... get_class_varsは明示的にクラス内で宣言された変数のみを与えます」と関連するVALUESは、クラス内で宣言されたものですランタイム値ではありません)。 –

関連する問題