DNA
12/11/2013 - 7:59 PM

php_as_js.php

<?php

class myStdClass {
    public function __call($method, $args) {
        if (isset($this->$method)) {
            return call_user_func_array($this->$method, $args);
        }
    }
}

$x = new myStdClass;
$x->a = function () {
    $D = new myStdClass;
    $D->c = 5;
    $D->b = function () use ($D) {
        return $D->c;
    };
    return $D;
};

echo $x->a()->b();