Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- Interface ValidationInterface
- {
- public function validate();
- }
- Class Validator
- {
- public function createValidation(ValidationInterface $validation)
- {
- return new Validation($validation);
- }
- }
- Class Validation implements ValidationInterface
- {
- private $validation;
- private $messages;
- public function __construct(ValidationInterface $validation)
- {
- $this->validation = $validation;
- }
- public function getMessages()
- {
- return $this->messages;
- }
- public function validate()
- {
- $messages = $this->validation->validate();
- $this->messages = array_merge($this->messages ?? [], $messages);
- return true;
- }
- }
- Class MyValidation implements ValidationInterface
- {
- public function validate()
- {
- return [ 'Hello World' ];
- }
- }
- $validator = new Validator();
- $validation = $validator->createValidation(new MyValidation());
- $validation->validate();
- var_dump($validation->getMessages());
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement