0
국제화를위한 Language 클래스를 만들고 있는데, 속성에 동적으로 액세스하고 싶습니다. (문자열 이름을 지정합니다.) 그러나 배열을 처리 할 때 어떻게 해야할지 모르겠습니다. 이 단지 예) :배열의 객체 속성에 동적으로 액세스하기
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를 통해 개인() 함수를 동적으로 .. 배열에 액세스하기위한 방법이 필요합니다.
감사합니다.
고맙습니다! 이 도우미는 배열 속성에 동적으로 액세스하는 문제를 해결했습니다. –