0
我正在建立一個國際化的語言類,我想動態地訪問屬性(給出字符串名稱),但我不知道如何處理數組時這只是一個例子):動態訪問類型數組的對象屬性
class Language {
public static $languages_cache = array();
public $index_header_title;
public $index = array(
"header" => array(
"title" => NULL
)
);
}
現在我來添加語言是這樣的:
Language::$languages_cache["en"] = new Language();
Language::$languages_cache["en"]->index_header_title = "Welcome!"; //setting variable
Language::$languages_cache["en"]->index["header"]["title"] = "Welcome!"; //setting array
功能的動態訪問成員:
function _($member, $lang)
{
if (!property_exists('Language', $member))
return "";
return Language::$languages_cache[$lang]->$member;
}
所以,輸出成員:
echo _('index_header_title', "en"); //works
echo _('index["header"]["title"]', "en"); //does not work
我需要動態地訪問..陣列公衆,並通過__set私人()函數的方式。
謝謝!
謝謝!該幫手解決了動態訪問數組屬性的問題。 – 2011-01-27 19:12:17