我正在用 php 编写一个轻量级的日志记录类。如何自动记录从中调用 Log 类中的函数的文件名/函数/行号,并保存行号和时间等内容,而不会让我的用户在 每次调用函数时都为输入$__LINE__
而烦恼。$__FILE__
有什么我可以隐式调用的。
例子:
class Log {
static private $instance;
static $logfile;
private function __construct(){
// doesn't need to do anything
// one logging object to avoid/control future/potential race conditions
}
public function getInstance(){
if(!Self::$instance) {
Self::$instance = new Log();
} else {
return Self::$instance;
}
}
public function criticalLog($string){
// I want this to be logging line number, filename
}
}
现在我希望能够像说文件 api.php 行号 15
logInstance.criticalLog("This log is important");
在我的日志文件中,我想看看
12/10/09-11:15 api.php 15 This log is important
有任何想法吗?我查看了 PEAR 和 log4php 解决方案,但它们对于我想要的东西来说似乎很重。