pl: Trait oder Elternklasse in einer Klassen Gruppe?

Beitrag lesen

Beispiel für Aggregation (Objekte in Objekten)

function _fetch_mesg($mesgid){
    if( ! isset($this->STH_FETCH_MESG)  ){
        $this->STH_FETCH_MESG = $this->DBH->prepare("SELECT * FROM $this->TABN WHERE mesgid=?");
    }
    $this->STH_FETCH_MESG->execute(array($mesgid));
    $mesg = $this->STH_FETCH_MESG->fetchAll();
    if( empty($mesg) ){ dd("Diese Nachricht existiert nicht!"); }
    return $mesg[0];
}

Wobei man die Struktur für die Statements weiter verbessern kann: $this->STATEMENTS was den Vorteil hat, daß man ggf. alle Statements mit einmal löschen kann. Aber das ist ja nur ein Beispiel und wie man sehen kann steckt in $this->DBH ein weiteres Objekt, das PDO Objekt. Letzteres wird zur Laufzeit eingebunden, man könnte es auch über den Konstruktor injezieren sofern es über die gesamte Anwendung benötigt wird.

Des Weiteren

    function param($name = ''){
        if(! isset($this->CGI) ){
            require "CGI.php";
            $this->CGI = new CGI();
        }
        return $this->CGI->param($name);
    }

auch ein typisches Beispiel für eine spätere Aggregation/late Delegation. Das CGI-Objekt wird erst eingebunden wenn die Methode param() aufgerufen wird. In Fakt beim ersten Aufruf dieser Funktion.

Das sind nur mal eben 2 Beispiele wie man seine Modells in Arraystrukturen abbilden kann. Deiner Kreativitär sind hier keine Genzen gesetzt.

MFG

0 61

Trait oder Elternklasse in einer Klassen Gruppe?

MB
  • php
  • programmiertechnik
  • projektverwaltung
  1. -2
    pl
    1. 0
      Gunnar Bittersmann
      • programmiertechnik
      1. -1
        pl
        1. 2
          Tabellenkalk
        2. 3
          Christian Kruse
          1. 0
            Rolf B
            1. 0

              Grundlegende Lernstrategien

              Der Martin
              • sonstiges
              1. 0
                Gunnar Bittersmann
        3. 1
          Felix Riesterer
    2. 1
      Tabellenkalk
    3. 1
      Felix Riesterer
    4. 0
      MB
      1. -1
        pl
        1. 0
          MB
          1. 1
            Felix Riesterer
            1. 0
              MB
              1. 1
                Tabellenkalk
                1. 0
                  MB
              2. 1

                Plural-s und Schriftformatierung

                Der Martin
                • markdown
                • sprache
                1. 0
                  MB
                  1. 0
                    Tabellenkalk
                    1. 0
                      MB
                      1. 3
                        Der Martin
                        1. 0
                          MB
                          • markdown
                  2. 0
                    Matthias Apsel
                    1. 0
                      Der Martin
                  3. 0
                    Der Martin
                    1. 0
                      MB
                2. 0
                  Der Martin
                  1. 0
                    Matthias Apsel
                    1. 0
                      Tabellenkalk
          2. -3
            pl
            1. 0
              Christian Kruse
            2. 0
              pl
              1. 0
                pl
              2. 2
                MB
                1. 0
                  pl
            3. 0
              Rolf B
            4. 1
              MB
              1. -3
                pl
                1. 1
                  MB
                  1. 0
                    Gunnar Bittersmann
                  2. 0
                    MB
                    • meinung
                    1. -1
                      pl
                      1. 0
                        MB
                      2. 0
                        Rolf B
          3. 0
            pl
            1. 1
              Mitleser
            2. 0
              MB
              1. -1
                pl
                1. 0
                  MB
    5. 0
      MB
      1. -3
        pl
        1. 0
          Rolf B
  2. 0
    pl
    1. 0
      MB
  3. 1
    dedlfix
    1. 0
      MB
  4. 0

    Dependency Injection, Vorsicht Falle

    pl
    1. 1
      dedlfix