asadlive84

InterFaces PHP-Rules

May 11th, 2015
275
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 0.62 KB | None | 0 0
  1. <?php
  2.  
  3.  
  4. interface Logger
  5. {
  6.     public function execute($message);
  7. }
  8.  
  9. class LogToFile implements Logger
  10. {
  11.     public function execute($message)
  12.     {
  13.         var_dump('Log that message: file '.$message);
  14.     }
  15. }
  16.  
  17.  
  18. class LogToDatabase implements Logger
  19. {
  20.     public function execute($message)
  21.     {
  22.         var_dump('Log that message database: '.$message);
  23.     }
  24. }
  25.  
  26.  
  27. class UserController
  28. {
  29.     protected $logger;
  30.  
  31.     public function __construct(Logger $logger)
  32.     {
  33.         $this->logger=$logger;
  34.     }
  35.  
  36.     public function show()
  37.     {
  38.         $user='Asad';
  39.  
  40.         $this->logger->execute($user);
  41.     }
  42. }
  43.  
  44. $user=new UserController(new LogToFile);
  45. $user->show();
Advertisement
Add Comment
Please, Sign In to add comment