Как получить объект или имя класса? - PullRequest
13 голосов
/ 08 апреля 2010

Прямо сейчас у меня есть этот код, где $obj_arr может содержать массив и объект.

$obj_temp = array ($obj_identity, $arr_user, $obj_locale, $arr_query); 

foreach ($obj_temp as $maybe_arr) {
        if (is_array($maybe_arr)) :
            $name = (string) key($maybe_arr);
        if (is_object($maybe_arr)) :    
            ???? // how to retrieve a class name ?
        endif;  

        $obj_arr[$name] = $maybe_arr;

}



obj_will_be_extract($obj_arr);

function obj_will_be_extract($obj_arr) {
    extract($obj_arr);

    //Do the rest

}

Мне нужно создать массив, состоящий из комбинации объектов и массивов. Потому что мне нужно извлечь его, тогда как получить имя объекта?

Ответы [ 2 ]

29 голосов
/ 08 апреля 2010

Используйте get_class, чтобы получить имя класса объекта.

9 голосов
/ 13 августа 2013

Начиная с PHP 5.5, вы можете использовать оператор MyAction::class, чтобы вы могли получить имя класса без инициализации класса

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...