PHP语法:$ var =(new Class()) - > someFunction();

Mic*_*nch 2 php syntax

基本上我在标题中提到的是我想要做的事情,我不确定它是否有可能做到.

我有:

$myClass = new Class();
$var = $myClass->someFunction();
Run Code Online (Sandbox Code Playgroud)

但后来我再也没有使用$ myClass,我可以取消它以释放内存.但我试图同时清理我的代码,并想知道以下是否有效

$var = (new Class())->someFunction();
Run Code Online (Sandbox Code Playgroud)

如果它不是你们会建议什么?

谢谢!

Mat*_*att 8

您始终可以将其声明someFunction()static方法.

$var = Class::someFunction();
Run Code Online (Sandbox Code Playgroud)

  • @Jon`self ::`会做到这一点.您可能必须定义一些额外的getter和setter,但原则仍然适用.发挥创意.没有什么是无法做到的. (3认同)