2.6 Constants.php — Глобальные пути и окружениеlink

Назначениеlink

Файл Constants.php содержит ключевые глобальные константы, которые используются по всей серверной части SFLoader.
Эти значения определяют корневую директорию фреймворка и его физическое расположение на диске.

Определяемые константыlink

const SF_MAIN = '/simai'; define("SF_PATH", $_SERVER["DOCUMENT_ROOT"] . SF_MAIN);

Значенияlink

  • SF_MAIN — относительный путь до корня фреймворка внутри проекта (используется в URL);
  • SF_PATH — абсолютный путь на диске (используется для чтения файлов).

Используется в:link

  • LoaderAsset.php — путь к ассетам (/asset/...);
  • AssetManager.php — кэш, временные файлы (/cache/loader/...);
  • TemplateLoader.php — путь до шаблонов (/cache/templates.txt);
  • Loader.phpclearCacheAnConfig(), getConfig(), getModule() и другие методы;
  • Везде, где необходимо получить путь до фреймворка без захардкоженных значений.

Пример использованияlink

$cacheDir = SF_PATH . '/cache/';
$assetDir = SF_MAIN . '/asset/simai.framework/...';

Особенностиlink

  • Благодаря вынесенным константам весь проект остаётся гибким и переносимым;
  • При изменении структуры (например, /simai переименуется) — нужно поменять только один файл;
  • Используется как на сервере (PHP), так и косвенно влияет на клиентские пути.