Dynamic-Mess.com


"The world is a dynamic mess of jiggling things..."

Manager et CRUD en PHP

Article posté le 26-11-2013 dans la catégorie PHP

Manager? CRUD? Encore des mots-clefs ou acronymes de nouvelles notions? Pas vraiment! Un manager est ni plus ni moins qu'un élément permettant de gérer ses entités, ses objets instanciés depuis une même classe si vous préférez.

Par exemple, si vous réalisez un jeu, votre Manager sera un objet, instancié depuis une classe, qui prendra en paramètre un objet vous permettant de vous connecter à votre base.

Votre Manager présentera alors les méthodes CRUD : Create, Read, Update, Delete. Pas besoin de vous faire la traduction, pour pouvoir éffectuer des opérations sur votre base pour vos joueurs. Petit exemple...

Partons du principe que nous avons déja notre joueur instancié, sous la variable $joueur, depuis la classe Joueur.

Commençons par créer notre objet de connexion à la BDD :

$conn = new PDO("mysql:host=$infos[serverName];dbname=$infos[dbName]", $infos['userName'], $infos['userPassword']);

Puis instancions notre Manager :

$manager = new joueurManager($conn);
$manager->add($joueur);

Avec ça vous l'aurez compris, vous ajoutez un joueur. Cependant, afin que vous compreniez mieux, voici le squelette de votre classe joueurManager :

class JoueurManager
{
  private $_db; // Votre instance de PDO.
  public function __construct($db)
  {
    $this->setDb($db);
  }
  public function add(Joueur $leJoueur)
  {
    /* ICI préparation + exécution de la requête INSERT */
  }
  public function delete(Joueur $leJoueur)
  {
    /* ICI exécution de la requête DELETE */
  }
  public function update(Joueur $leJoueur)
  {
    /* ICI préparation + exécution de la requête UPDATE */
  }
  public function setDb(PDO $db)
  {
    $this->_db = $db;
  }
}

On pourrait aussi rajouter une fonction pour lister tous les joueurs, ou encore pouvoir en rechercher un par son ID, son pseudo...

 


Tweet
comments powered by Disqus