Classe para gerar logs

Publicado por Perfil removido (última atualização em 27/06/2011)

[ Hits: 9.468 ]

Download OXPLog.php




Classe que consiste em gerar logs persistentes em arquivos de texto.
O uso é simples:

<?php
require_once('OXPLog.php');
// Instancia o objeto, especificando o arquivo que receberá os dados
$oxpl = new OXPLog('log.txt');
// Gera
$oxpl->insertIntoLogFile('Acesso à página: ' . $_SERVER['REQUEST_URI']);
?>

  



Esconder código-fonte

<?php
/**
 * Description of OXPLog
 * -------------------------------------------------
 * @author Orlando Xavier <ox@orlandoxavier.com>
 * -------------------------------------------------
 * Classe para controle de gravação de logs
 */
class OXPLog {
    /*
     * Arquivo de logs
     */
    private $file;
    /**
     *
     * @param <string> $file Arquivo a ser criado e/ou usado
     */
    public function __construct($file) {
        // Deixa o arquivo oculto caso o sistema seja UNIX-like
        if (strtoupper(substr(PHP_OS, 0, 3)) != 'WIN') {
            $this->file = '.' . $file;
        } else {
            $this->file = $file;
        }
    }
    /*
     * Prepara o arquivo para gravação
     */
    public function fileCheckAndPrepare() {
        if (!file_exists($this->file)) {
            $f = fopen($this->file, 'w');
        } else {
            $f = fopen($this->file, 'a');
        }
        return $f;
    }
    /**
     *
     * @param <string> $event Evendo definido pelo programador
     * @return <bool> $r
     */
    public function insertIntoLogFile($event) {
        $f = $this->fileCheckAndPrepare();
        $logText = '(' . date('d/m/Y H:i:s') . ') ' .
                '[IP] ' . $_SERVER['REMOTE_ADDR'] .
                ' => [Evento] ' . $event . "\n";
        if (!fwrite($f, $logText)) {
            $r = false;
        } else {
            $r = true;
        }
        fclose($f);

        return $r;
    }
}
?>

Scripts recomendados

Jogo de Dados

Formatar CPF e CNPJ para formato user friendly

Script para noticias no formato rss

Mega Sena

Trasnmitir arrays pelo link


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts