phpbar.de logo

Mailinglisten-Archive

[php] In Objekt auf andere Objekte zugreifen

[php] In Objekt auf andere Objekte zugreifen

Andreas Demmer andreas at phpbar.de
Fre Okt 10 15:33:07 CEST 2003


Andreas Demmer wrote:

> Mein Vorschlag wäre Inbound-Objects zu nutzen:

Vergesst meinen Snippet, ich hab aus Versehen abgesendet!
Hier meine Lösung auf dem Singleton-Pattern basierend:

class db {
    function db() {
    }
    
    function query() {
        echo "führe Query aus...<br>\n";
    }
}

class singleton {
    var $instances = array();
    
    function singleton() {
    }
    
    function instance($class) {
        if(!is_object($this->instances[$class])) {
            $this->instances[$class] = new $class();
        }
        $pointer = &$this->instances[$class];
        return $pointer;
    }
}

function singleton($class) {
    static $singleton;
    
    if(!is_object($singleton)) {
        $singleton = new singleton();
    }
    
    return $singleton->instance($class);
    
}

class foo {
    function foo() {
    }

    function bar() {
        $db = singleton('db');
        $db->query();
    }
}

$foo = new foo();
$foo->bar();

foo::bar();


Gruss,
Andreas



php::bar PHP Wiki   -   Listenarchive