Hallo Leute,
Ich versuchte zurzeit einen Debugger mit den Singleton Pattern zu entwickeln.
Der echoDebugger (Gibt die Nachrichten direkt im Browser aus) funktioniert.
Nun habe ich auch einen 2. Debugger entworfen, der alles in einer Log Datei loggen soll, aber hier tauchen die Probleme auf.
Hier die Beiden Debugger:
Folgender maßen ruft man den Debugger auf:
Ich erhalte folgende Fehlermeldung:
Notice: Undefined index: test.log in D:\xampp\htdocs\MW3 Server Interface\classes\Debugger\debugger.class.php on line 57
Notice: Undefined index: test.log in D:\xampp\htdocs\MW3 Server Interface\classes\Debugger\debugger.class.php on line 59
Fatal error: Call to a member function debug() on a non-object in D:\xampp\htdocs\MW3 Server Interface\classes\Debugger\debugger.class.php on line 72
Hoffe ihr könnt mir Helfen,
mfg
Sebastian
Ich versuchte zurzeit einen Debugger mit den Singleton Pattern zu entwickeln.
Der echoDebugger (Gibt die Nachrichten direkt im Browser aus) funktioniert.
Nun habe ich auch einen 2. Debugger entworfen, der alles in einer Log Datei loggen soll, aber hier tauchen die Probleme auf.
Hier die Beiden Debugger:
PHP-Code:
// Interface for Log and echo Debugger
interface Debugger {
public static function getInstance();
public function debug($prefix, $msg);
}
// Set Normal Log File
define("FILE", "logger.log");
class echoDebugger implements Debugger{
protected $prefix;
protected $msg;
protected $time;
protected function __construct() {}
private static $instance = null;
public static function getInstance() {
if(self::$instance == null){
self::$instance = new echoDebugger();
}
return self::$instance;
}
public function debug($prefix, $msg){
$this->prefix = $prefix;
$this->msg = $msg;
$this->time = date("d:m:Y H:i");
echo "[{$this->prefix}]" . "[{$this->time}]" . " {$this->msg}";
}
}
class logDebugger{
protected $prefix;
protected $msg;
protected $time;
protected static $instances = array();
protected $logfile;
protected function __construct() {}
public static function getInstance($logfile) {
if(!isset(self::$instances[$logfile])){
self::$instances[$logfile];
}
return self::$instances[$logfile];
}
public function debug($prefix, $msg) {
$this->time = date("d:m:Y H:i");
$this->msg = $msg;
$this->prefix = $prefix;
error_log("[{$this->prefix}]" . "[{$this->time}]" . " {$this->msg}\n", 3, self::$instances[$logfile]);
}
}
PHP-Code:
$logger = logDebugger::getInstance("test.log");
$logger->debug("WARNUNG", "test");
Notice: Undefined index: test.log in D:\xampp\htdocs\MW3 Server Interface\classes\Debugger\debugger.class.php on line 57
Notice: Undefined index: test.log in D:\xampp\htdocs\MW3 Server Interface\classes\Debugger\debugger.class.php on line 59
Fatal error: Call to a member function debug() on a non-object in D:\xampp\htdocs\MW3 Server Interface\classes\Debugger\debugger.class.php on line 72
Hoffe ihr könnt mir Helfen,
mfg
Sebastian

)
Kommentar