2010-10-23 90 views
4

我真的不知道如何描述這個問題,所以我很抱歉如果標題有點不清楚。訪問變量與對象

我得到一個數組字段的對象。我得到了這些字段的名稱存儲在一個變量,我想要達到其中一個數組字段的元素。例如

$field_name = 'array_field'; 

$object = new stdClass(); 
$object->array_field= array('this', 'is', 'an', 'array); 

我知道我可以$object->$field_name訪問陣列,但現在我想通過鍵數組中訪問值,而與$field_name變量訪問它。例如,(這顯然不工作)$object->$field_name[0]

+0

使用數組,花花公子。變量變量是跛腳的。 – 2010-10-23 06:30:53

回答

14

我想,你應該使用類似以下內容:

$object->{$field_name}[0] 

它在細節中「變量變量」中描述PHP手冊部分:http://www.php.net/manual/en/language.variables.variable.php

順便說一句,根據我的經驗,這種字段操作方式可能會導致代碼模糊 - 我如果可能的話,建議使用關聯數組。

+0

謝謝!奇蹟般有效。我想我是盲目的,因爲我找不到它,或者我只是不知道要尋找什麼 – Barthje 2010-10-23 06:25:17

+0

如果可能,我會檢查更清晰的方式,謝謝:) – Barthje 2010-10-23 06:27:00

3

試試這個:

$object->{$field_name}[0]