2014-02-09 110 views
0

如果我有以下類屬性$classProperty = "Initial value",如何使用另一個屬性$propertyName = "classProperty"訪問它?我想要做一些像${$propertyName} = "Modified value",並得到echo $classProperty輸出:"Modified value"通過字符串名稱(PHP)獲取屬性

+1

通過屬性你的意思是HTML類? – 2014-02-09 00:46:24

+1

嗯,沒有得到你的問題。我的理解我認爲你的意思是指訪問類實例屬性?請更具體地將 –

+1

變量變量...壞主意......你可以使用引用。 '$ foo = &$bar; $ bar ='baz'; echo $ foo'會輸出'baz' ... –

回答

0

你應該嘗試設置類屬性到一個數組

private $_arProp = array(); 

然後,使用鍵來標識屬性

$_arProp[ 'key' ] = 'Property Value'; 

這將有助於我的想法。

+0

我可以使用property_exists()來檢查一個屬性是否存在,如果它存在,我想設置它,但是一旦確認它存在,我不知道如何訪問它。問題是我的類有很多屬性,所以我想能夠將它們設置爲SetProperty($ theProperty,$ theValue)。 SetProperty方法將檢查屬性是否存在,如果是,則給它的值。 – HelloWorld

0

如果它是一個靜態屬性,那麼你可以做ClassName::$$propertyName

對於屬性的一個實例,做$instance->$propertyName

相關問題