IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Wrap de méthode


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    178
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 178
    Points : 93
    Points
    93
    Par défaut Wrap de méthode
    Bonjour à tous,

    je développe actuellement une classe pour toutes les opérations utilisateur en BD... Seulement, plutôt que de répéter le même code à chaque début et fin de méthode, j'aimerais plutôt faire qqch dans ce genre là:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    class Foo_Io_Db {
       protected $db;
       //[...]
       public function __setUp() {
          $this->db = new PDO("mysql:host=mysuperhost;dbname=mydbname", "toto", "xxxxxxxxx");
          $this->db->setAttribute(PDO :: ATTR_ERRMODE, 1);
       }
     
       public function storeUser(User $user) {
     
           $sql = "INSERT INTO " . self::$table . "(login, email, password, profile) ";
           $sql .= "VALUES (:login, :eMailAddress, :password, :status)";
           $stmt = $this->db->prepare($sql);
           //[...]
       }
     
       public function __tearDown() {
          $this->db = null;
       }
    }
    Vous savez s'il existe déjà quelque chose comme ca ? PHPUnit utilise ce genre de techniques, mais j'aimerais pouvoir l'utiliser en dehors des tests aussi.

    Merci d'avance !
    Rolf IV

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 144
    Points : 161
    Points
    161
    Par défaut
    S'il existe déjà ? càd ?

    Ce que tu essaies de faire s'appelle de l'object relational mapping (ORM), la bibliothèque probablement la plus connue pour en faire s'appelle Doctrine, d'autres sont intégrées dans des frameworks.

    Quelle est ta question exactement ?

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    178
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 178
    Points : 93
    Points
    93
    Par défaut
    Bonjour et merci de ta réponse,

    j'aimerais savoir s'il est possible que des méthodes (telles que setUp et tearDown avec PHPUnit) peuvent être implicitement appelés en début (setUp) et fin (tearDown) de chaque méthode.

    Dans mon exemple précédent, j'aimerais que la méthode storeUser invoque de facon transparente setUp avant de commencer quoi que ce soit, et tearDown une fois l'opération terminée.

    Existe-t'il un tel outil pour se faire ?

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 144
    Points : 161
    Points
    161
    Par défaut
    Citation Envoyé par Rolf-IV Voir le message
    Bonjour et merci de ta réponse,

    j'aimerais savoir s'il est possible que des méthodes (telles que setUp et tearDown avec PHPUnit) peuvent être implicitement appelés en début (setUp) et fin (tearDown) de chaque méthode.

    Dans mon exemple précédent, j'aimerais que la méthode storeUser invoque de facon transparente setUp avant de commencer quoi que ce soit, et tearDown une fois l'opération terminée.

    Existe-t'il un tel outil pour se faire ?
    J'ai du mal à voir l'intérêt. Le but est d'ouvrir une connexion en début de script et de la fermer en fin de script (en admettant que tu ne la souhaites pas persistente), et non pas à chaque fois que tu effectues une action dessus.

Discussions similaires

  1. StringGrid, multiligne et word wrap
    Par Dajon dans le forum C++Builder
    Réponses: 7
    Dernier message: 17/09/2003, 17h15
  2. Gros Problème avec DirectShow et la méthode RELEASE
    Par Olivier Delmotte dans le forum DirectX
    Réponses: 3
    Dernier message: 10/03/2003, 18h10
  3. [Singleton] Différences avec méthodes statiques
    Par Franche dans le forum Design Patterns
    Réponses: 1
    Dernier message: 26/02/2003, 17h10
  4. Probleme d'impression avec la méthode TForm->Print()
    Par Kid Icarus dans le forum C++Builder
    Réponses: 13
    Dernier message: 31/07/2002, 14h26
  5. Cryptage en C selon la méthode de césat
    Par shenron dans le forum C
    Réponses: 2
    Dernier message: 31/05/2002, 08h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo