PHP 익명 클래스
새로운 클래스를 통해 PHP 7 지원은 "사용 후 굽기"완전한 클래스 정의의 일부를 대체하는 데 사용할 수있는 익명 클래스를 인스턴스화합니다.
예
예
<? php에
인터페이스 로거 {
공공 기능 로그 (문자열 $ MSG) ;
}
클래스 응용 프로그램 {
개인 $ 로거;
공공 기능 getLogger () : 로거 {
반환 $이 -> 로거;
}
공공 기능 setLogger (로거 $ 로거) {
> 로거 = $ 로거 -이 $ ;
}
}
$ 응용 프로그램 = 새로운 응용 프로그램;
익명 클래스를 사용하여 새 클래스를 만듭니다 //
$ 앱 -> setLogger은 (새 클래스는 로거 {구현
공공 기능 로그 (문자열 $ MSG) {
인쇄 ($의 MSG);
}
});
$ 응용 프로그램 -> getLogger () - > 로그 ( " 나의 첫 번째 로그");
?>
인터페이스 로거 {
공공 기능 로그 (문자열 $ MSG) ;
}
클래스 응용 프로그램 {
개인 $ 로거;
공공 기능 getLogger () : 로거 {
반환 $이 -> 로거;
}
공공 기능 setLogger (로거 $ 로거) {
> 로거 = $ 로거 -이 $ ;
}
}
$ 응용 프로그램 = 새로운 응용 프로그램;
익명 클래스를 사용하여 새 클래스를 만듭니다 //
$ 앱 -> setLogger은 (새 클래스는 로거 {구현
공공 기능 로그 (문자열 $ MSG) {
인쇄 ($의 MSG);
}
});
$ 응용 프로그램 -> getLogger () - > 로그 ( " 나의 첫 번째 로그");
?>
위의 프로그램 실행 출력은 다음과 같습니다
我的第一条日志