有沒有可能通過字符串表示「調用」類實例?如何在PHP中「調用」類實例?
在這種情況下,我會想到的代碼如下所示:
class MyClass {
public $attribute;
}
$obj = getInstanceOf("MyClass"); //$obj is now an instance of MyClass
$obj->attribute = "Hello World";
我想這一定是可能的,因爲PHP的SoapClient的接受它用於一個WSDL元素映射到PHP類classMappings列表。但SoapClient如何「調用」類實例?
啊坦克,那麼容易。 :-D 還有一個問題,是有辦法測試,如果該類真的存在嗎? Like: if(classExists(「MyClass」)){ $ obj = getInstanceOf(「MyClass」); } – NovumCoder 2009-10-09 09:18:57
有'class_exists()':http://www.php.net/manual/en/function.class-exists.php。但請注意第二個參數。 – 2009-10-09 09:21:53
謝謝你們。 ReflectionClass是完美的解決方案。那麼我忘了這叫做Reflection not invoking。 :-) – NovumCoder 2009-10-09 09:36:50