在php7中,匿名类现在可以使用%uA0new%uA0class%uA0来定义。匿名类可以使用来代替完整的类定义。
示例
<?php interface Logger { public function log(string $msg) } class Application { private $logger public function getLogger(): Logger { return $this->logger } public function setLogger(Logger $logger) { $this->logger = $logger } } $app = new Application $app->setLogger(new class implements Logger { public function log(string $msg) { print($msg) } }) $app->getLogger()->log("My first Log Message") ?>
这将在浏览器产生输出以下结果-
My first Log Message