<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
// +----------------------------------------------------------------------+
// | PHP version 4                                                        |
// +----------------------------------------------------------------------+
// | Copyright (c) 2005 PDC WEB Group                                     |
// +----------------------------------------------------------------------+
// +----------------------------------------------------------------------+
// | Authors: Web-i Team @auth OBITSU,TOMIZAWA                            |
// +----------------------------------------------------------------------+
//
// $Id:LogFileOutput.class.php,v 1.0 2005/10/15
//
// ファイルへのログ出力クラス
require_once("LogOutput.class.php");
class LogFileOutput extends LogOutput {
	var $logFileName_ = LOGFILENAME;
	var $fp_;
	var $opened_;

	/**
	 * ログファイルオープンメソッド
	 */
	function open() {
		if (!$this->opened_) {
			$this->fp_ = fopen($this->logFileName_,"a");
			if ($this->fp_ != null) {
				$this->opened_ = true;
			}
		}
	}

	/**
	 * ログファイルクローズメソッド
	 */
	function close() {
		if ($this->opened_) {
			fclose($this->fp_);
			$this->opened_ = false;
		}
	}

	/**
	 * 指定ファイル出力メソッド
	 */
	function output($str) {
		if (!$this->opened_) {
			$this->open();
		}
		flock($this->fp_,LOCK_EX);
		fwrite($this->fp_,"[".$this->type_."] ".strftime("%D %T")." ".$str."\n");
		flock($this->fp_,LOCK_UN);
		$this->close();
	}
}
?>