PHP 7 中的匿名类
2022-08-30 13:39:08
我可以在哪里使用,我应该使用PHP 7中呈现的匿名类吗?我找不到它们的用例。
$message = (new class() implements Message {
public function getText() { return "Message"; }});
我可以在哪里使用,我应该使用PHP 7中呈现的匿名类吗?我找不到它们的用例。
$message = (new class() implements Message {
public function getText() { return "Message"; }});
您可以在此处找到要查找的信息,其中显示了 RFC。
“用例”部分的要点如下:
我还发现这在编写特征单元测试时很有用,因此您可以仅测试特征方法,即:
trait MyTrait
{
public method foo(): string
{
return 'foo';
}
}
...
public function setUp(): void
{
$this->testObject = (new class() {
use MyTrait;
});
}
public function testFoo(): void
{
$this->assertEquals('foo', $this->testObject->foo());
}