PHP passing a class as a reference?
in Python, you could do something like this:
class SomeClass(object): pass
s = SomeClass
s开发者_如何学PythonomeClassInstance = s()
How could you accomplish the same effect in PHP? From what I understand, you cannot do this? Is this true?
You can create instances of dynamic class names; simply pass the name of the class as a string:
class SomeClass {}
$s = 'SomeClass';
$someClassInstance = new $s();
Using reflection:
class SomeClass {}
$s = new ReflectionClass('SomeClass');
$someClassInstance = $s->newInstance();
The nice thing about using reflection is that it throws a catchable exception in the event the class does not exist.
精彩评论