Einzelnen Beitrag anzeigen

Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#19

Re: Abhängigkeit von Klassen unmöglich?

  Alt 13. Mär 2010, 07:33
Moin,

@nat: implementier doch auch gleich Dependency Injection:

Code:
class Data
{
    private $cache;
   
    public $forceDB = false;
   
    public function __construct($cache)
    {
        $this->cache = $cache;            
    }
   
    public function get($name)
    {
        $data = false;
        if(!$this->forceDB && $this->cache)
            $data = $this->cache->get($name);
           
        if($data === false)
        {
            //aus DB lesen
            $data = ...;
            if ($this->cache)
                $this->cache->set($name, $data);
        }

        return $data;
    }
}

$data = new Data(new Cache());
$data->forceDB = true;
echo $data->get('blabla');
Der Vorteil ist, dass du dann Cache auch als Singleton implementieren kannst:
Code:
$data = new Data(Cache::getInstance());
Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat