Как я могу получить доступ к константам класса с помощью `self ::` внутри анонимной функции, определенной в методе?

Я хотел бы получить доступ к константе класса, используя self из анонимной функции.

class My_Class {    
    const  CLASS_CONSTANT = 'test value';
    private function my_function(){     
        $lambda_function = function(){
            echo self::CLASS_CONSTANT;
        };
        $lambda_function();
    }
}

Когда я попробовал это, я получил сообщение об ошибке:

Неустранимая ошибка: Невозможно получить доступ к self ::, когда в ...

Можно ли передать родительский класс в область этого анонимная функция? Будет ли использовать оператор работать?

14
задан hakre 5 April 2013 в 02:43
поделиться