PHP: простой класс для ведения логов

Написал несколько лет назад простой класс для ведения логов, который успешно применяю почти во всех своих проектах.

Вот как он выглядит:

class LOG
{
// use STATIC rendering
	static private $fplog;	// file handler for logging
 
	// open logging file for writing
	static public function start($flogname = 'log.txt') {
		self::$fplog = fopen($flogname,'ab');
	}
 
	static public function stop() {
		fclose(self::$fplog);
	}
 
	static public function write($s, $usedate = true) {
	// пишем в лог-файл строку $s,
	// $usedate - вставлять ли в лог дату/время текущие
		if($usedate) 
			$tim = '['.date('Y-m-d H:i:s').'] ';
		else
			$tim = '';
		fwrite(self::$fplog,$tim.$s."\n");
	}
}
 
LOG::start();	// start default logging

Замететь, что после создания этого статичного класса мы сразу стратуем журнал лога через LOG::start() метод. После этого методами LOG::write() мы можем писать в лог всё что нам вздумается.

Да, и сразу отвечаю на пару вопросов.
1. Используем статичные методы для того, чтобы вести логи без создания экземпляра класса, через статический метод LOG::write(сообщение для лога). По умолчанию в логе пишется время перед сообщением в формате [YYYY-mm-dd H:i:s], но если мы во втором параметре передадим false, то время писаться для данного сообщения не будет. Естественно, это поведение можно изменить заменив в методе write() второй параметр с $usedate = true на $usedate = false.

2. Но почему просто не использовать один экземпляр класса? Но тогда во всех функциях его надо будет объявлять отдельно как глобальный, а нам этого делать не хочется.

Из любых функций, методов мы пишем LOG::write() и наш лог заполнен.

Лог пишется в файл log.txt в текущей директории, но мы можем при вызове метода start передать другое имя для файла лога.

Чтобы в Apache environment закрыть доступ к логу со стороны внешних запросов можно использовать такое простое правило Apache‘а:

<Files log.txt>
Deny from all 
</Files>

Кинув это правило в файл .htaccess в папке с log.txt, мы оградим наш лог от внешних любопытных взглядов.

Пока всё, на сим раскланиваюсь, с наступающим Новым Годом вас и православным Рождеством.

Отличного настроения, здоровья и ясного сознания. Keep you mind clear. Keep your mind open.

До встречи, друзья!