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