2010-06-11 60 views
0

我想動態地在類屬性中分配一個值(即使用變量引用它)。如何動態地爲PHP中的類屬性賦值?

#Something like: 
setPropValue($obj, $propName, $value); 
+0

Dup的[你可以創建PHP動態實例屬性?(HTTP的:// stackoverflow.com/q/829823/) – outis 2012-07-11 22:08:22

回答

1

是這樣的?

$myClass = new stdClass(); 
$myProp = 'foo'; 
$myClass->$myProp = 'bar'; 
echo $myClass->foo; // bar 
echo $myClass->$myProp; // bar 
2

如果你想爲static members做到這一點,你可以使用可變變量:

class Foo 
{ 
    public static $foo = 'bar'; 
} 

// regular way to get the public static class member 
echo Foo::$foo; // bar 

// assigning member name to variable 
$varvar = 'foo'; 
// calling it as a variable variable 
echo Foo::$$varvar; // bar 

// same for changing it 
Foo::$$varvar = 'foo'; 
echo Foo::$$varvar; // foo 
+1

+1這可能是第一次變量變量沒有傷害我的眼睛。 – Artefacto 2010-06-11 15:21:15

相關問題