Объявление анонимной функции в новом stdClass

Просто интересно, почему что-то вроде этого не работает:

public function address($name){
    if(!isset($this->addresses[$name])){
        $address = new stdClass();
        $address->city = function($class = '', $style = ''){
            return $class;
        };          
        $this->addresses[$name] = $address;
    }
    return $this->addresses[$name];
}

Назовем это как echo $ class-> address ('name') -> city ('Class' ) должен просто повторить Class , однако я получаю Неустранимая ошибка: вызов неопределенного метода stdClass :: city ()

Я могу найти лучший способ сделать это, потому что это будет запутаться, но мне интересно, что я могу делать здесь не так, или если PHP не поддерживает это и почему.

9
задан Kavi Siegel 20 February 2012 в 02:10
поделиться