<?php

class Foo {
    const use = 'yay';

    public static function new() {
        echo __METHOD__, PHP_EOL;
        return new static();
    }

    public function self() {
        echo __METHOD__, PHP_EOL;
        return $this;
    }
}

Foo::new()::new()::new();

var_dump(
    (new Foo)->self()::new()->self()->self()::use
);

Foo::{'new'}();

var_dump(Foo::use);

echo "\nDone\n";
?>