2013-02-16 69 views
0

是否可以在一行中執行以下操作?例如,像$obj=new "entry_{$type}";謝謝從附加字符串創建新類

$class="entry_{$type}"; 
$obj=new $class(); 
+0

答案是NO – 2013-02-16 18:23:24

+0

http://stackoverflow.com/questions/534159/instantiate-a-class-from-a-variable-in-php – BenOfTheNorth 2013-02-16 18:28:00

+4

當然,它是如此重要的代碼被縮減爲一個單一的儘可能在線 – 2013-02-16 18:32:16

回答

4

是的,但只有當你真的想要它。這是一個有點尷尬:

$obj = new ${!${''}="entry_$type"}(); 

來源:Code-Golf: one line PHP syntax

PHP希望最終move to a proper parser使用抽象語法樹,這可能會收緊,目前防止語法孔,例如,new ("entry_$type")()或類似的東西。

+0

Egads!它回答了這個問題,但我肯定會留在兩行! – user1032531 2013-02-16 18:36:47