hallo, z.b. nehme man an es gäbe 2 classen [php4]
ist das so richtig? werden die classen so richtig übergeben (singleton) oder habe ich etwas nicht richtig verstanden?
danke schonmal im vorraus, gruß Boris
PHP-Code:
class config {
function config () {
// constructor
trigger_error('nicht direkt aufrufen',E_USER_ERROR);
}
function getInstance () {
if (array_key_exists('CONFIG_INSTANCE', $GLOBALS)) {
return $GLOBALS['CONFIG_INSTANCE'];
} else {
$GLOBALS['CONFIG_INSTANCE'] = new config();
return $GLOBALS['CONFIG_INSTANCE'];
}
}
// some functions
}
class foobar {
var config_obj;
function foobar () {
// constructor
trigger_error('nicht direkt aufrufen',E_USER_ERROR);
}
function Init () {
$this->config_obj = config::getInstance();
return true;
}
function getInstance () {
if (array_key_exists('FOOBAR_INSTANCE', $GLOBALS)) {
return $GLOBALS['FOOBAR_INSTANCE'];
} else {
$GLOBALS['FOOBAR_INSTANCE'] = new foobar();
return $GLOBALS['FOOBAR_INSTANCE'];
}
}
// innerhalb von foobar greife ich dann imma auf $this->config_obj
// zurück, also $this->config_obj->what_ever(args);
}
$foobar =& foobar::getInstance();
$foobar->whatever(args);
danke schonmal im vorraus, gruß Boris
Kommentar