Location: PHPKode > projects > NmnLogger > NmnLogger1.1/drivers/NmnLoggerFileDriver.php
<?php 
    /*
    NmnLogger is a library that provides logging functionnality to php applications
    Copyright (C) 2006  Ivan Preziosi from netmeans.net - Rome.

    This library is free software; you can redistribute it and/or
    modify it under the terms of the GNU Lesser General Public
    License as published by the Free Software Foundation; either
    version 2.1 of the License, or (at your option) any later version.

    This library is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    Lesser General Public License for more details.

    You should have received a copy of the GNU Lesser General Public
    License along with this library; if not, write to the Free Software
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA

    For more informations or to join the development of the library contact
    the author at: hide@address.com
    */
require_once "logger/drivers/NmnLoggerBaseDriver.php";

/**
 * This is the file logger driver used to log message logs diretcly to a text file.
 * As like every NmnLogger driver it must extend the NmnLoggerBaseDriver class.
 * 
 * @author  Ivan Preziosi <hide@address.com>
 * @version 1.1
 * @since   NmnLogger 0.5
 * @package NmnLogger
 *
 */
class NmnLoggerFileDriver extends NmnLoggerBaseDriver{

	private $filePath = '';
	private $fileName = '';
	private $todayDate = '';
	

	public function __construct(){
		$this->todayDate = date("d_m_Y");
		$this->filePath = 'logger/fileLogs/';
		$this->fileName = $this->todayDate.'.log';
		
	}
	
	/**
	* Writes the message log down to the specified file.
	*/
	public function doLog(NmnMessageFactory $message){
		
		$filename = $this->filePath.$this->fileName;
		$text = $message->getFormattedMessage();

		$file = @fopen($filename,'a',true);
		if (!$file){
			fclose($file);
			throw new Exception("NmnFileLogger Driver: unable to open logFile:($filename)<br />");
		}
		
		if (@fwrite($file,$text) === false){
			fclose($file);
			throw new Exception("NmnFileLogger Driver: unable to write to logFile:($filename)<br />");
		}

		fclose($file);
	}

	
}



?>
Return current item: NmnLogger