Gimli
Mitglied
Habe eine Klasse die CharacterDAO heißt:
Problem liegt bei __destruct()
So nun wird dort die Methode close() aus der DB Klasse verwendet:
Dort wird die Methode debug aus der Statischen Klasse Debug aufgerufen.
Nun kommt aber Logger.ini konnte nicht gefunden werden. Wenn ich die funktion close() irgendwo anders als im Destruktor aufrufe funktioniert es. Woran liegt das?
mfg Mark
PHP:
class CharacterDAO {
private $dbObj;
public $error;
private $ini;
public function __construct() {
$db = parse_ini_file("/config/db.ini");
$this->ini = parse_ini_file("/config/encarnium.ini");
$this->dbObj = new MysqlDatabase($db);
$this->dbObj->connect();
}
/**
* Charakter in die Datenbank einfügen
* @param array (Name, Class ID)
* @return boolean
*/
public function addcharacter($values) {
..................
}
/**
* Destrukor
*/
public function __destruct() {
$this->dbObj->close();
}
}
Problem liegt bei __destruct()
So nun wird dort die Methode close() aus der DB Klasse verwendet:
PHP:
public function close() {
if($this->active === "connect") {
Logger::debug("Verbindung zur Datenbank '".$this->db."' unterbrochen \r\n", "db");
mysql_close($this->dbObj);
}
}
Dort wird die Methode debug aus der Statischen Klasse Debug aufgerufen.
Nun kommt aber Logger.ini konnte nicht gefunden werden. Wenn ich die funktion close() irgendwo anders als im Destruktor aufrufe funktioniert es. Woran liegt das?
mfg Mark