PHP中的速记新实例 - >方法语法? [重复]

Possible Duplicate:
PHP: How to chain method on a newly created object?

I can create an instance and call it's method via:

$newObj = new ClassName();
$newObj -> someMethod();

But is there any way I can do it in a shorter notation, an anonymous instance? I tried this:

(new ClassName())->someMethod();

But it doesn't seem to work as expected.

Additional Info: The method I want to call is public but not static.

Not that i know of.

But! - You could implement a Singleton Pattern and then call:

ClassName::getInstance()->someMethod();

Or, to cut it short ;)

ClassName::gI()->someMethod();

If someMethod does not refer to $this, you could also simply call it as a static function, though it wasn't defined as one:

ClassName::someMethod();

PHP 5.4 supports it.

If you can't update you can workaround like this:

function yourclass($param) {
   return new yourclass($param);
}

yourclass()->method();

Don't forget that your constructor must return $this;

If the method is static and doesn't rely on any class variables (maybe you've put it in a class just for organisation purposes), you can simply call it staticly as phil is demonstrating with getInstance:

ClassName::someMethod()