PHP anonyme Klasse
PHP 7 - Unterstützung überneue Klasse eine anonyme Klasse instanziiert, die verwendet werden können , einige der "brennen nach dem Gebrauch" eine komplette Klassendefinition zu ersetzen.
Beispiele
Beispiele
<? Php
Schnittstelle Logger {
public function log (string $ msg) ;
}
Klasse Anwendung {
private $ Logger;
public function getLogger (): Logger {
return $ this -> Logger;
}
public function setLogger (Logger $ Logger) {
$ This -> Logger = $ Logger ;
}
}
$ App = new Anwendung;
// Erstellen Sie eine neue Klasse anonymen Klasse mit
$ App -> setLogger (neue Klasse implementiert Logger {
public function log (string $ msg) {
print ($ msg);
}
});
$ App -> getLogger () - > log ( " mein erstes Protokoll");
?>
Schnittstelle Logger {
public function log (string $ msg) ;
}
Klasse Anwendung {
private $ Logger;
public function getLogger (): Logger {
return $ this -> Logger;
}
public function setLogger (Logger $ Logger) {
$ This -> Logger = $ Logger ;
}
}
$ App = new Anwendung;
// Erstellen Sie eine neue Klasse anonymen Klasse mit
$ App -> setLogger (neue Klasse implementiert Logger {
public function log (string $ msg) {
print ($ msg);
}
});
$ App -> getLogger () - > log ( " mein erstes Protokoll");
?>
Die obige Programmausführung Ausgabe ist:
我的第一条日志