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