Skip to content

Instantly share code, notes, and snippets.

@azcdev
Last active December 31, 2015 07:19
Show Gist options
  • Save azcdev/7953656 to your computer and use it in GitHub Desktop.
Save azcdev/7953656 to your computer and use it in GitHub Desktop.
Ejemplo de inyeccion de dependencias en PHP
<?php
class Motor {
public function __construct(){}
public function arranca() {
return "run run run run...";
}
}
class MotorDiesel extends Motor {
public function __construct() {}
}
class MotorBiodiesel extends Motor {
public function __construct() {}
}
class Carro {
private $motor;
public function __construct(Motor $motor) {
$this->motor = $motor;
$this->motor->arranca();
}
}
$motorDiesel = new MotorDiesel();
$motorBiodiesel = new MotorBiodiesel();
$carroDiesel = new Carro($motorDiesel);
$carroHipster = new Carro($motorBiodiesel);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment