DependencyInjector.php 460 B

1234567891011121314151617
  1. <?php
  2. class DependencyInjector {
  3. private $_dependencyArray=array();
  4. public function Register($interface,$class) {
  5. if (isset(class_implements($class)[$interface])){
  6. $this->_dependencyArray[$interface]=$class;
  7. }else
  8. throw new Exception("Class '$class' does not implement interface '$interface'");
  9. }
  10. public function Resolve($interface) {
  11. $item = new $this->_dependencyArray[$interface];
  12. $item->DependencyInjector=$this;
  13. return $item;
  14. }
  15. }