Версия 0.7.1
Абсолютно стандартный MVC-фреймворк. Тестировался на php-7.4
Структура проекта:
site - типовой MVC-движок с наиболее логичной структурой папок
site/app - php коды движка, включая стандартные папки типа model, view, controller.
site/app/core - ядро проекта (конфигурации, подключение к базе, роутинги, сессии, кэширование, безопасность и прочие системные коды)
site/app/lib - сторонние библиотеки подключаемые к проекту
site/public - логично доступные по внешним запросам ресурсы (css, js, images, index.php …)
site/public/js/modules - размещен пример модульного программирования для js
sqlToObject(records,specification) - функция-убийца Mongo и ORM систем, которая соберет из строк sql-запроса индексированный набор объектов в стиле MongoDB. Сложность обработки набора записей O(n). Есть версия как для front-end так и для back-end.
mySQLInstallDatabase.sql - скрипт устаноки базы данных с таблицами users и groups.
Редирект внешних запросов на единую точку входа site/public/index.php
осуществляется стандартным для MVC-фреймворков способом через настройки apache2:
#Пример настроек в apache2.conf:
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Allow from all
Order Deny,Allow
Require all granted
</Directory>
<VirtualHost *:80>
ServerName cyber.ai
ServerAlias www.cyber.ai
DocumentRoot "/var/www/html/cyber/site/public/"
</VirtualHost>
#Само правило редиректа прописано в site/public/.htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>
Далее делаем активацию mod_rewrite:
sudo a2enmod rewrite
service apache2 restart
Таким образом запрос отправит вас на демо-форму регистрации пользователя
http://cyber.ai/Auth/registration
ЧПУ сделаны, но применен один редирект в .htaccess аналогично как и у топ 3 фреймворков. Используется стандартный php-шаблонизатор, который можно заменить или дополнить любым шаблонизатором по вкусу.
Реализован интерфейс и базовая система кэширования страниц и блоков в базу данных(см в site/app/core/cache).
Кэширование же в файлы или в другие системы вы можете подключить к интерфейсу самостоятельно.
В систему включены только базовые системы безопасности, но вы всегда можете их заменить или дополнить своими системами безопасности.
Описание
Минимальный и абсолютно стандартный MVC-фреймворк PHP 7, 8. Структура папок намного более логичная чем у топ php-фреймворков. Обозначена модульность javascript. ЧПУ стандартные domain/controller/function?param=value. Шаблонизатор - встроенный в php. Базовые элементы безопасности взяты из php: Защита sql = PDO; Авторизация = password_hash(); Сессии = session_start(); Можно активировать cookie-авторизацию.