PHP匿名クラス
PHP匿名クラス
PHP 7は、新しいクラスを介して匿名クラスのインスタンス化をサポートしています。これは、一部の「使用後に焼き付ける」完全なクラス定義を置き換えるために使用できます
インスタンス
<?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; // 使用 new class 創(chuàng)建匿名類 $app->setLogger(new class implements Logger { public function log(string $msg) { print($msg); } }); $app->getLogger()->log("我的第一條日志"); ?>
上記のプログラムが実行されます出力結(jié)果は次のとおりです:
My first log