mysqli in fremder klasse nutzen

  • Hi

    ich suche nach einer Möglichkeit Mysqli in einer meiner erstellten Klassen zu nutzen.
    Ich möchte jedoch auf class xxxxx extends mysqli oder das einschleußen einer variable vermeiden ($class->foo($mysqli, $rest))

    gibt es eine möglichkeit mit der ich aus der klasse auf mysqli zugreifen kann?

    Gruß
    WWKiller

  • Dependency Injection ist hier der richtige Weg. D.h. du übergibst das Datenbankobjekt an dein neues Objekt, entweder beim initialiseren über den Konstruktor, oder über eine Setter-Methode.

    Alternativen wären Singleton oder eine Registry, von beidem Rate ich aber hierfür ganz ausdrücklich ab. Das ist kein schöner Programmierstil.

    "Programming today is a race between software engineers
    striving to build bigger and better idiot-proof programs,
    and the universe trying to build bigger and better idiots.
    So far, the universe is winning."
    Rick Cook