クラスインスタンスを文字列表現で「呼び出す」可能性はありますか?私は、コードは次のようになりことを期待する。この場合PHPでクラスインスタンスを「呼び出す」方法
:
私はPHPののSoapClientは、PHPクラスにWSDL要素をマップするために使用されclassMappingsのリストを受け入れ、これは、可能でなければならないと思いますclass MyClass {
public $attribute;
}
$obj = getInstanceOf("MyClass"); //$obj is now an instance of MyClass
$obj->attribute = "Hello World";
。しかし、SoapClientはどのようにクラスインスタンスを「呼び出す」のですか?
ああ、それは簡単です。 :-D 質問がもう1つあります。そのクラスが実際に存在するかどうかをテストする方法はありますか? Like: if(classExists( "MyClass")){ $ obj = getInstanceOf( "MyClass"); } – NovumCoder
'class_exists()'があります:http://www.php.net/manual/en/function.class-exists.php。しかし、第二引数を見てください。 –
ありがとう。 ReflectionClassは完璧なソリューションです。まあ、これは、呼び出されないリフレクションと呼ばれることを忘れていました。 :-) – NovumCoder