PHP klasy anonimowe
PHP 7 wsparcia za pośrednictwemnowej klasy instancję anonimową klasę, która może być użyta w celu zastąpienia niektórych "wypalenie" po użyciu pełnej definicji klasy.
Przykłady
Przykłady
<? Php
Interfejs Logger {
log public function (string $ msg) ;
}
Klasa Application {
private $ rejestratora;
public function getLogger (): Logger {
return $ this -> Rejestrator;
}
public function setLogger (Logger $ logger) {
$ This -> logger = $ rejestratora ;
}
}
$ App = new Application;
// Tworzymy nową klasę używając anonimową klasę
$ App -> setLogger (nowa klasa implementuje Logger {
log public function (string $ msg) {
print ($ msg);
}
});
$ App -> getLogger () - > log ( " mój pierwszy dziennik");
?>
Interfejs Logger {
log public function (string $ msg) ;
}
Klasa Application {
private $ rejestratora;
public function getLogger (): Logger {
return $ this -> Rejestrator;
}
public function setLogger (Logger $ logger) {
$ This -> logger = $ rejestratora ;
}
}
$ App = new Application;
// Tworzymy nową klasę używając anonimową klasę
$ App -> setLogger (nowa klasa implementuje Logger {
log public function (string $ msg) {
print ($ msg);
}
});
$ App -> getLogger () - > log ( " mój pierwszy dziennik");
?>
Wyjście powyżej wykonywanie programu jest:
我的第一条日志