PHP 7 - Lớp ẩn danh
Các lớp ẩn danh bây giờ có thể được định nghĩa bằng cách sử dụng lớp mới. Lớp ẩn danh có thể được sử dụng thay cho định nghĩa lớp đầy đủ.
Thí dụ
<?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");
?>
Nó tạo ra đầu ra trình duyệt sau:
My first Log Message