PHP classe anônima
PHP 7 suporte vianova classe para instanciar uma classe anônima, que pode ser usado para substituir alguns dos "queimar após o uso" uma definição de classe completa.
Exemplos
Exemplos
<? Php
Interface Logger {
log função pública (string $ msg) ;
}
Aplicação da classe {
$ Logger privado;
função pública getLogger (): Logger {
return $ this -> logger;
}
setLogger função pública (Logger $ logger) {
$ This -> logger = $ logger ;
}
}
$ App = new Aplicação;
// Cria uma nova classe usando classe anônima
$ App -> setLogger (nova classe implementa Logger {
log função pública (string $ msg) {
print ($ msg);
}
});
$ App -> getLogger () - > log ( " meu primeiro log");
?>
Interface Logger {
log função pública (string $ msg) ;
}
Aplicação da classe {
$ Logger privado;
função pública getLogger (): Logger {
return $ this -> logger;
}
setLogger função pública (Logger $ logger) {
$ This -> logger = $ logger ;
}
}
$ App = new Aplicação;
// Cria uma nova classe usando classe anônima
$ App -> setLogger (nova classe implementa Logger {
log função pública (string $ msg) {
print ($ msg);
}
});
$ App -> getLogger () - > log ( " meu primeiro log");
?>
A saída de execução de programa acima é:
我的第一条日志