PHP - Making Class-Objekt Global Gesamte Anwendung?

Ist es ein einfacher Weg, um ein class-Objekt global für eine gesamte Anwendung in PHP? Ich brauche meine Klasse nur einmal instanziiert werden während der gesamten Anwendung und es funktioniert 100%.

Dank.

BEARBEITEN

Beschlossen das Singleton-Muster ist die beste Idee für das, was ich brauche, und wurde aufgefordert, fügen Sie ein wenig code, so ist es hier:

Mithilfe der Klasse in meiner app:

function catp_check_request(){
    $catp=catp::getInstance();

    $dlinks=array();
    $ddlinks=array();

    foreach($catp->rawlinks->link as $rawlink){
        $dellink="catp-del-{$rawlink->name}";
        array_push($dlinks,$dellink);
    }

    //More stuff..
}

Deklaration der Klasse:

class catp {

private static $instance;
private $errors;
private $status_messages;
private $plugin_name;
private $plugin_shortname;
private $links;
private $linksurl;
private $rawlinks;

private function __construct(){}

public static function getInstance() {
    if (self::$instance == null) {
        self::$instance = new catp();
    }
    return self::$instance;
}

public function catp(){
    $this->errors=false;
    $this->plugin_name='CloakandTrack Plugin';
    $this->plugin_shortname='CaTP';
    $this->status_messages=array(
        'updated' => 'You just updated',
        'enabled' => 'You just enabled',
        'disabled' => 'You just disabled',
        'debug' => 'Plugin is in debug mode'
    );
    $this->linksurl=dirname(__FILE__).'/links.xml';
    $this->rawlinks=simplexml_load_file($this->linksurl);
    $this->links=$this->catp_parse_links($this->rawlinks);
}

//More functions..

}
InformationsquelleAutor Jared | 2011-07-17
Schreibe einen Kommentar