phpbar.de logo

Mailinglisten-Archive

[php] singleton mit parametern

[php] singleton mit parametern

Thomas Richter php at wwedit.org
Fre Mar 26 13:24:05 CET 2004


mal ein beispiel:

>
> Meinst du in das Singelton Objekt einbauen?
> Könntest du mir da mal ein Beispiel/Link geben?

class Singleton {
  function Singleton($params = array)
  {
    extract($params);
    // hier sind nun die variable $user & $pass
    // vorhanden
  }

  function &FactoryMethod($params)
  {
     return new Singleton($params);
  }
}

class Factory
{
   function &getInstance($classname,$params=array())
   {
       static $instances = array();
       if (!array_key_exists($classname,$instance)) {
          $instances[$classname] = 
call_user_func(array($classname,"FactoryMethod"),$params);
       }
       return $instances[$classname];
   }
}

// fuer einen loginprozess, bzw. beim ersten erstellen der Instanz
// username & passwort fuer den login uebergeben.
$params = array('user'=>$user,'pass'=>$pass);
$user =& Factory::getInstance("Singleton",$params);

function MachWas()
{
   // da dass objekt schon erstellt wurde, brauchen wir
   // username & passwort nicht mehr...
   $user =& Factory::getInstance("Singleton");
}


-- snip --

alles nur mal so schnell vor mich hingettippt... keine garantier,
ob's funktioniert.. aber das prinzip sollte klar sein.


gruss thomas



php::bar PHP Wiki   -   Listenarchive