Библиотеки

Библиотеки движка принято распологать в папке /lib, при создании экземпляра класса библиотеки происходит её автоматическое подключение если класс называется так же как и файл его описывающий т.е. если класс называется FileLogger то файл его содержащий должен находится по адресу /lib/FileLogger.php

FileSys - работа с файлами

  • string FilenameSecurity (string $str)

    Удаляет из входной строки, все символы которые не могут быть использованы в имени файла (включая ../ и ./)
  • bool DeleteDir (string $dir)

    Удаляет каталог с подкаталогами
  • bool MakeDir (string $path)

    Создаёт каталог и каталоги в которые он вложен если их нет
  • int WriteFile (path $file, string $data[, bool $flgAppend = false])

    Производит запись в файл ($file), если его и(или) каталогов в которые он вложен не было, записывает данные $data в этот файл, если $flgAppend равен true то добавляет в этот файл данные если он был.
    Возвращает число записаных бит
  • string ReadFile (string $file)

    Возвращает данные из файла если это возможно
  • array ReadList (string $dir)

    Возвращает список файлов в каталоге, а так же файлы в каждом подкаталоге если таковые имеются
  • string Size (string $file)

    Возвращает текстовое обозрачение размера файла (Kb, Mb, Gb и пр.)
Все методы данного класса статичные, потому не требуют объявления экземпляра класса.

FileLogger - библиотека для логирования текстовых данных

Корректно работает при повтором открытии лога на один и тот же файл, следит за переполнением файла лога и в случае необходимости создаёт архив старого лога рядом с логируемым файлом
  • Все ф-ии данной библиотеки легко расписать следущим простым кодом:
                    $log = FileLogger::Create(BASEPATH . 'tmp/mylog.log');
                    $log->Message("Test1"); // Добавит строку в лог
                    $log->Error("Test 2"); // Добавит строку в лог пометив заголовком что это ошибка
                    $log->Ok("Test 3"); // Добавит строку в лог пометив что это строка сингализирующая об успешном выполнении
                
Стоит так же отметить, что в движке есть ф-я ToLog($msg, $path = '') которая производит запись либо в файл переданный в $path либо в тот что указан в $g_config['logPath'] если в $path ничего не передано.

Php - настройка php для работы скриптов

В основном это внутренная библиотека движка, предназначенная для установки локали, часового пояса, настроек php.ini из $g_config['phpIni'], однако из неё так же можно использовать следущее:

  • string Status (int $code)

    Возвращает правильное текстовое обозначение статуса работы веб сервера (например: HTTP/1.1 200 OK, HTTP/1.1 403 Forbidden и пр.) Весь список статусов можно посмотреть в файле библиотеки /lib/Php.php

Библиотеки используемые для организации работы движка

Данные классы мало пременимы вне самого движка, потому пройдём только по предназначению каждого
  • ExtraPacker - Предназначен для объединения и сжатия js/css файлов
  • Db - БД DbSimple, и класс для сбора и вывода лога запросов
  • Debug - Класс Debug_ErrorHook, тоже от DkLab предназначен для отлова ошибок и сбора информации по ней
  • DebugPanel - Выводит панельку внизу сайта с информацией при Debug-режиме
  • HtmlValidate - Объединияет head-сектора в каждого компонента в один
  • InputClean - Предназначен для очистки входных данных от XSS инъекций (используется в Get() и Post())