コード例 #1
0
        }
    }
}
class SyslogLogger
{
    // ...
    public function info($message)
    {
        syslog(LOG_INFO, $message);
    }
}
class FlashMessage
{
    // ...
    public function success($message)
    {
        echo $message;
    }
}
///
$data = ['username' => 'adrianpietka', 'password' => 'strong#password', 'email' => '*****@*****.**'];
$flash = new FlashMessage();
$logger = new SyslogLogger();
$userRepository = new DoctrineUserRepository();
$userFactory = new RegisterFormUserFactory();
$registerService = new RegisterUserService($userRepository, $userFactory);
$registerService->register($data, function ($user) use($logger, $flash) {
    $logger->info(sprintf('Created new account with email: %s', $user->getEmail()));
    $flash->success('Congratulations your registration has been successful.');
});
// @via zawarstwaabstrakcji.pl