This appender requires a layout.

* * An example php file: * * {@example ../../examples/php/appender_echo.php 19} * * An example configuration file: * * {@example ../../examples/resources/appender_echo.properties 18} * * The above example would print the following: *
 *    Tue Sep  8 22:44:55 2009,812 [6783] DEBUG appender_echo - Hello World!
 * 
* * @version $Revision$ * @package log4php * @subpackage appenders */ class LoggerAppenderEcho extends LoggerAppender { /** boolean used internally to mark first append */ private $firstAppend = true; /** * If set to true, a
element will be inserted before each line * break in the logged message. Default value is false. @var boolean */ private $htmlLineBreaks = false; public function __construct($name = '') { parent::__construct($name); $this->firstAppend = true; } public function __destruct() { $this->close(); } public function activateOptions() { $this->closed = false; } public function close() { if($this->closed != true) { if(!$this->firstAppend) { echo $this->layout->getFooter(); } } $this->closed = true; } public function append(LoggerLoggingEvent $event) { if($this->layout !== null) { if($this->firstAppend) { echo $this->layout->getHeader(); $this->firstAppend = false; } $text = $this->layout->format($event); if ($this->htmlLineBreaks) { $text = nl2br($text); } echo $text; } } public function setHtmlLineBreaks($value) { $this->htmlLineBreaks = LoggerOptionConverter::toBoolean($value, false); } public function getHtmlLineBreaks() { return $this->htmlLineBreaks; } }