/** * Méthode permettant d'enregistrer des données textuelles dans un fichier de Logs * Définit le nom du dossier ainsi que celui du fichier en fonction de la date * @param String $pMessage Message à enregistrer dans le fichier * @param String $pLevel Niveau d'importance de l'information * @return void */ public static final function write($pMessage, $pLevel = self::NOTICE) { $ip = $_SERVER["REMOTE_ADDR"]; $folder = Autoload::$folder . "/includes/logs/" . date("m-y") . "/"; $file = date("d-m-y") . ".txt"; $message = "[ " . date("H\\hi\\ms\\s") . " ] [" . $ip . "] [ " . Core::$application . " ] [ " . $pLevel . " ]\t\t" . $pMessage . "\r\n"; Folder::create($folder); File::create($folder . $file); chmod($folder . $file, 0666); File::append($folder . $file, $message); }
/** * @param string $pUrl * @param string $pTitle * @param string $pDescription * @param null $pFirst */ private function log($pUrl, $pTitle, $pDescription, $pFirst = null) { if (!$this->logFile) { return; } if (!$pFirst) { $pFirst = gmdate("D, d M Y H:i:s", time()); } $pTitle = str_replace('"', '""', $pTitle); $pTitle = Encoding::fromHTMLEntities($pTitle); $pDescription = str_replace('"', '""', $pDescription); $pDescription = Encoding::fromHTMLEntities($pDescription); File::append($this->logFile, '"' . $pFirst . '";"' . $pUrl . '";"' . $pTitle . '";"' . $pDescription . '"' . PHP_EOL); }
/** * Méthode d'exportation de données provenant de la base vers un fichier CSV * Renvoie le résultat de l'écriture du fichier * @param Array $pData Tableau des données * @param String $pFileName Nom du fichier * @return Boolean */ public static function export(array $pData, $pFileName) { if (!$pData) { return false; } $donnees = self::encode($pData); File::delete($pFileName); File::create($pFileName); return File::append($pFileName, $donnees); }