我如何在函数内部使用log4php

时间:2017-04-18 12:00:29

标签: php function class log4php

在具有函数的类中使用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还是如何?

1 个答案:

答案 0 :(得分:1)

来自Reference

的简单示例
// 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();