Доступ к закрытым переменным из замыкания

Я пытаюсь ссылаться на закрытую переменную объекта изнутри замыкания. Код ниже, кажется, работает, но он жалуетсяFatal error: Cannot access self:: when no class scope is active in test.php on line 12 а такжеFatal error: Using $this when not in object context in test.php on line 20.

Любые идеи, как добиться того же результата, используя замыкание, сохраняя переменные закрытыми и не создавая вспомогательных функций (опровергая саму идею закрытой переменной).

class MyClass
{

    static private $_var1;
    private $_var2;

    static function setVar1( $value )
    {
        $closure = function () use ( $value ) {
            self::$_var1 = $value;
        };
        $closure();
    }

    function setVar2( $value )
    {
        $closure = function () use ( $value ) {
            $this->_var2 = $value;
        };
        $closure();
    }

}

MyClass::setVar1( "hello" ); //doesn't work

$myclass = new MyClass;
$myclass->setVar2( "hello" ); //doesn't work

Ответы на вопрос(3)

Ваш ответ на вопрос