在具有函数的类中使用log4php的正确形式是什么?
<?php
include_once 'log4php-2.3.0/src/main/php/Logger.php';
class template
{
public static temp1;
public static temp2;
Logger::configure($path . '\commons\log4php-2.3.0\config.xml');
$log = Logger::getLogger('myLogger');
public static function example1()
{
}
public static function example2()
{
}
}
如何在两个函数中调用$log->fatal($error);
行?我应该重新申报每个中的$ log还是如何?
答案 0 :(得分:1)
// Include and configure log4php
include('log4php/Logger.php');
Logger::configure('config.xml');
/**
* This is a classic usage pattern: one logger object per class.
*/
class Foo
{
/** Holds the Logger. */
private $log;
/** Logger is instantiated in the constructor. */
public function __construct()
{
// The __CLASS__ constant holds the class name, in our case "Foo".
// Therefore this creates a logger named "Foo" (which we configured in the config file)
$this->log = Logger::getLogger(__CLASS__);
}
/** Logger can be used from any member method. */
public function go()
{
$this->log->info("We have liftoff.");
}
}
$foo = new Foo();
$foo->go();