Структура типичного проекта, выполненного на основе mzz выглядит следующим образом:
<папка проекта>/
tmp/
www/
configs/
files/
templates/
.htaccess
application.php
index.phpПеречислим все представленные каталоги и опишем их назначение:
- tmp/ - каталог, в котором распологаются временные файлы (кэш резолвера, скомпилированные шаблоны смарти...)
- www/ - основной каталог, в котором непосредственно размещается сам проект
- configs/ - каталог, в котором располагаются различные конфигурационные файлы
- files/ - каталог с файлами, которые могут быть отданы напрямую через веб-сервер
- templates/ - каталог с шаблонами
- .htaccess - служебный файл веб-сервера apache, в котором располагаются правила для mod_rewrite (и, возможно, другие настройки)
- application.php - файл, в котором лежит класс application, расширяющий базовый класс core. Метод run() этого класса инициализирует запуск приложения
- index.php - файл, являющийся фактической точкой входа в приложение. В нём происходит подключение файлов config.php и application.php, инстанциация объекта класса application и запуск метода run()
На схеме выше представлена минимальная структура каталогов проекта, которая может быть дополнена с целью изменения и расширения функционала приложения (см. раздел Resolvers).