source: branches/comu-ver2/data/module/log4php/php4/log4php/appenders/LoggerAppenderEcho.php @ 18220

Revision 18220, 2.3 KB checked in by yokkuns, 15 years ago (diff)

#149 ロガークラス作成

Line 
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 */
23if (!defined('LOG4PHP_DIR')) define('LOG4PHP_DIR', dirname(__FILE__) . '/..');
24 
25/**
26 */
27require_once(LOG4PHP_DIR . '/LoggerAppenderSkeleton.php');
28require_once(LOG4PHP_DIR . '/LoggerLog.php');
29
30/**
31 * LoggerAppenderEcho uses {@link PHP_MANUAL#echo echo} function to output events.
32 *
33 * <p>This appender requires a layout.</p> 
34 *
35 * @author VxR <vxr@vxr.it>
36 * @version $Revision: 1.5 $
37 * @package log4php
38 * @subpackage appenders
39 */
40class LoggerAppenderEcho extends LoggerAppenderSkeleton {
41
42    /**
43     * @access private
44     */
45    var $requiresLayout = true;
46
47    /**
48     * @var boolean used internally to mark first append
49     * @access private
50     */
51    var $firstAppend    = true;
52   
53    /**
54     * Constructor.
55     *
56     * @param string $name appender name
57     */
58    function LoggerAppenderEcho($name)
59    {
60        $this->LoggerAppenderSkeleton($name);
61    }
62
63    function activateOptions()
64    {
65        return;
66    }
67   
68    function close()
69    {
70        if (!$this->firstAppend)
71            echo $this->layout->getFooter();
72        $this->closed = true;   
73    }
74
75    function append($event)
76    {
77        LoggerLog::debug("LoggerAppenderEcho::append()");
78       
79        if ($this->layout !== null) {
80            if ($this->firstAppend) {
81                echo $this->layout->getHeader();
82                $this->firstAppend = false;
83            }
84            echo $this->layout->format($event);
85        }
86    }
87}
88
89?>
Note: See TracBrowser for help on using the repository browser.