[ Index ]

PHP Cross Reference of vtigercrm-6.1.0

title

Body

[close]

/libraries/log4php.debug/appenders/ -> LoggerAppenderDailyFile.php (source)

   1  <?php
   2  /**
   3   * log4php is a PHP port of the log4j java logging package.
   4   * 
   5   * <p>This framework is based on log4j (see {@link http://jakarta.apache.org/log4j log4j} for details).</p>
   6   * <p>Design, strategies and part of the methods documentation are developed by log4j team 
   7   * (Ceki G�lc� as log4j project founder and 
   8   * {@link http://jakarta.apache.org/log4j/docs/contributors.html contributors}).</p>
   9   *
  10   * <p>PHP port, extensions and modifications by VxR. All rights reserved.<br>
  11   * For more information, please see {@link http://www.vxr.it/log4php/}.</p>
  12   *
  13   * <p>This software is published under the terms of the LGPL License
  14   * a copy of which has been included with this distribution in the LICENSE file.</p>
  15   * 
  16   * @package log4php
  17   * @subpackage appenders
  18   */
  19  
  20  /**
  21   * @ignore 
  22   */
  23  if (!defined('LOG4PHP_DIR')) define('LOG4PHP_DIR', dirname(__FILE__) . '/..');
  24   
  25  require_once(LOG4PHP_DIR . '/appenders/LoggerAppenderFile.php');
  26  
  27  /**
  28   * LoggerAppenderDailyFile appends log events to a file ne.
  29   *
  30   * A formatted version of the date pattern is used as to create the file name
  31   * using the {@link PHP_MANUAL#sprintf} function.
  32   * <p>Parameters are {@link $datePattern}, {@link $file}. Note that file 
  33   * parameter should include a '%s' identifier and should always be set 
  34   * before {@link $file} param.</p>
  35   *
  36   * @author Abel Gonzalez <[email protected]>
  37   * @version $Revision: 1.7 $
  38   * @package log4php
  39   * @subpackage appenders
  40   */                      
  41  class LoggerAppenderDailyFile extends LoggerAppenderFile {
  42  
  43      /**
  44       * Format date. 
  45       * It follows the {@link PHP_MANUAL#date()} formatting rules and <b>should always be set before {@link $file} param</b>.
  46       * @var string
  47       */
  48      var $datePattern = "Ymd";
  49      
  50      /**
  51      * Constructor
  52      *
  53      * @param string $name appender name
  54      */
  55      function LoggerAppenderDailyFile($name)
  56      {
  57          $this->LoggerAppenderFile($name); 
  58      }
  59      
  60      /**
  61      * Sets date format for the file name.
  62      * @param string $format a regular date() string format
  63      */
  64      function setDatePattern ( $format )
  65      {
  66          $this->datePattern = $format;
  67      }
  68      
  69      /**
  70      * @return string returns date format for the filename
  71      */
  72      function getDatePattern ( )
  73      {
  74          return $this->datePattern;
  75      }
  76      
  77      /**
  78      * The File property takes a string value which should be the name of the file to append to.
  79      * Sets and opens the file where the log output will go.
  80      *
  81      * @see LoggerAppenderFile::setFile()
  82      */
  83      function setFile()
  84      {
  85          $numargs = func_num_args();
  86          $args    = func_get_args();
  87          
  88          if ($numargs == 1 and is_string($args[0])) {
  89              parent::setFile( sprintf((string)$args[0], date($this->getDatePattern())) );
  90          } elseif ($numargs == 2 and is_string($args[0]) and is_bool($args[1])) {
  91              parent::setFile( sprintf((string)$args[0], date($this->getDatePattern())), $args[1] );
  92          }
  93      } 
  94  
  95  }
  96  
  97  ?>


Generated: Fri Nov 28 20:08:37 2014 Cross-referenced by PHPXref 0.7.1