Вот задание:
Цитата:
Написать класс (или группу классов) для возможности логирования определенных сообщений.
- Возможность писать логи в stdout, mysql, файл по выбору. (Выбор осуществляется для всей системы логирования)
- Предусмотреть настройки mysql, пути до файла логирования
- Логи должны содержать:
* Дату и время события (в формате YYYY-MM-DD HH:MM:SS)
* Сообщение логирования (строка, массив, объект, исключение)
Код должен быть написан на языке PHP без использования фреймворков и сторонних библиотек.
Обязательно использование объектно-ориентированного подхода.
Архитектура программы должна быть масштабируема (возможность расширения функционала с минимальными правками существующего кода).
- Возможность писать логи в stdout, mysql, файл по выбору. (Выбор осуществляется для всей системы логирования)
- Предусмотреть настройки mysql, пути до файла логирования
- Логи должны содержать:
* Дату и время события (в формате YYYY-MM-DD HH:MM:SS)
* Сообщение логирования (строка, массив, объект, исключение)
Код должен быть написан на языке PHP без использования фреймворков и сторонних библиотек.
Обязательно использование объектно-ориентированного подхода.
Архитектура программы должна быть масштабируема (возможность расширения функционала с минимальными правками существующего кода).
Я написал класс три класса для каждого типа логирования. Привожу код для MySQL
CODE (htmlphp):
скопировать код в буфер обмена
скопировать код в буфер обмена
- class LogDB {
- private $host = 'localhost';
- private $database = 'log';
- private $user = 'root';
- private $password = '';
- function __construct() {
- }
- }
- private function __construct4($host,$database,$user,$password) {
- $this->host = $host;
- $this->database = $database;
- $this->user = $user;
- $this->password = $password;
- }
- public function logAdd($entry){
- $mysqli = new mysqli($this->host, $this->user, $this->password, $this->database);
- if ($mysqli->connect_error) {
- }
- $mysqli->set_charset("utf8");
- $mysqli->query("insert into log (log) values('$entry')");
- if ($mysqli->errno) {
- }
- $mysqli->close();
- }
- }