J'ai une personne de classe et je voudrais en utilisant le modèle de stratégie pour ajouter un comportement de stockage. Quelque chose comme çamodèle stratégie question - PHP
interface Storage{
public function store();
}
class LocalStorage implements Storage(){
public function store(){
..
// save in a file
..
}
}
class Person{
private $behaviourStorage;
private $name;
private $age;
public function __construct(Storage $objStorage,$name,$age) {
$this->behaviourStorage = $objStorage;
}
public function Store(){
$this->behaviourStorage->store();
}
}
$objPerson = new Person(new LocalStorage(),'John',32);
Ma question est, comment puis-je utiliser le comportement de stockage pour enregistrer les informations de la personne objet? Comment passer l'objet au LocalStorage pour qu'il sache quoi sauvegarder?
Peut-être que ce n'est pas le modèle de conception après tout, mais l'intention est claire: mettre en œuvre des comportements différents de stockage pour l'objet personne.
C'est parfait: $ this-> behaviourStorage-> magasin ($ this). Le schéma de stratégie est-il appliqué correctement dans cette situation? Merci – danidacar
C'est si le 'Storage' peut obtenir les champs qu'il doit stocker. –