Hallo.
Kann ich in php5 irgendwie ermitteln von wo aus eine Methode aufgerufen wurde (ich bräuchte die Zeile und die Datei)?
Konkret geht es um das debuggen von "unlogischen" aufrufen. Bei php fehlern habe ich ja debug_backtrace() zur Verfügung.
z.B: in der Datei start.php (Zeile 12) rufe ich die Methode add_classes auf.
In der Datei xyz.php hat mein Klasse die folgende Methode. Wenn die Klasse in dieser Klasse schon vorhanden ist, dann soll der debug Methode als Datei "start.php" und als Zeile "12" übergeben werden.
Mit __LINE__ und __FILE__ wird mir ja die Zeile und die Datei der xyz.php übergeben.
Kann ich in php5 irgendwie ermitteln von wo aus eine Methode aufgerufen wurde (ich bräuchte die Zeile und die Datei)?
Konkret geht es um das debuggen von "unlogischen" aufrufen. Bei php fehlern habe ich ja debug_backtrace() zur Verfügung.
z.B: in der Datei start.php (Zeile 12) rufe ich die Methode add_classes auf.
In der Datei xyz.php hat mein Klasse die folgende Methode. Wenn die Klasse in dieser Klasse schon vorhanden ist, dann soll der debug Methode als Datei "start.php" und als Zeile "12" übergeben werden.
PHP-Code:
public function add_classes($arg = array()){
foreach($arg as $key => $value){
if(!isset($this->{$key})){
$this->{$key} = $value;
}else{
$trace = debug_backtrace();
$this->debug("Class '{$key}' wasn't added <b>(Class already exists)</b><br>(".__LINE__.") - ".__FILE__,'framework');
}
}
}
Kommentar