0
A
回答
1
还有Reflection API。例如:
<?php
$rc = new ReflectionClass('A');
// question 1) create an instance of A
$someArgs = array(1,2,3);
$obj = $rc->newInstanceArgs($someArgs);
// question 2) invoke static method of class A
$rm = $rc->getMethod('foo');
if (!$rm->isStatic()) {
echo 'not a static method';
}
else {
$rm->invokeArgs(null, $someArgs);
}
class A {
public function __construct($a, $b, $c) { echo "__construct($a,$b,$c)\n";}
public static function foo($a, $b, $c) { echo "foo($a,$b,$c)\n";}
}
4
$obj = new $className();
$var = $className::method();
3
的静态方法1: $ obj = new $ className
2: $ className :: someMethod($ parameter)
相关问题
- 1. 在C#中,如何创建一个给定其类型名称的对象?
- 2. 创建一个给定类名称作为字符串类的对象
- 3. 如何用变量的名称创建一个新类(对象?)?
- 4. PHP:如何返回一个实例化的类对象,给定一个类名?
- 5. 如何获得给定类名称的未知类的对象
- 6. 如何创建一个新的对象,其超类型的名称被分配给一个变量?
- 7. 如何创建对象名称java
- 8. 创建一个只包含给定类的对象的数组
- 9. 如何在它的基类中创建一个子类对象?
- 10. 如何为自动创建的类对象分配名称(python)
- 11. 我要调用一个类的对象,是类名称的给定参数
- 12. 如何实例化给定类名称和基类的对象命名空间
- 13. 如何使用Spring Framework从类路径/名称创建对象?
- 14. Java如何创建唯一的对象名称?
- 15. 如何在Scala中创建一个类型对象的集合
- 16. 如何在Excel中创建一个java类的对象vba
- 17. 如何创建一个有条件定义类型的对象?
- 18. 我如何使用给定字符或字符串的用户创建一个名称的对象?
- 19. 如何使用“未知名称”在R中创建对象?
- 20. PHP创建匿名对象
- 21. ECS:从类名称动态创建特定对象
- 22. 创建一个PHP类 - >在另一个类中创建它的一个对象
- 23. 如何在PHP中定义一个复杂的对象类
- 24. 返回给定名称的R对象
- 25. 将一个类中创建的对象传递给另一个类
- 26. factory_girl - 如何在另一个对象的定义内创建一个对象
- 27. 如何用同一个元素的多个名称创建JavaScript对象?
- 28. 如何为一种类型的对象创建一个类?
- 29. 如何创建这个类的对象?
- 30. 如何在一个对象内创建一个javascript对象?
哦,我没想到这个被接受。请记住,如果IMO符合你的需求,那么'new $ className()'没有任何问题。 ReflectionClass可以让你做更多的事情,但它也增加了一些复杂性。 – VolkerK 2010-08-13 10:48:18
我接受你的答案,因为我的编辑器$ className :: method()被标记为错误... – liysd 2010-08-13 11:51:35