islandfuture / minilib
Mini Lib PHP framework (Island Future)
v2.02
2026-04-23 11:29 UTC
Requires
- php: ^8.1
Requires (Dev)
- phpunit/phpunit: ^10.0
This package is auto-updated.
Last update: 2026-07-04 13:50:55 UTC
README
Минималистичный PHP-фреймворк для построения веб-приложений и CLI-скриптов с поддержкой MySQL через PDO.
Требования
- PHP 8.1+
- ext-pdo
- ext-pdo_mysql
- ext-intl (для IDN-доменов и email с кириллицей)
- ext-mbstring
Установка
composer require islandfuture/minilib
Структура проекта
После установки создайте следующие папки и файлы:
my-project/
├── public/ # Document Root веб-сервера
│ └── index.php # Точка входа
├── app/ # Код приложения
│ ├── App.php # Класс приложения
│ └── WebActions/ # Обработчики запросов
│ └── DefaultAction.php
├── config/
│ └── config.php # Конфигурация
├── tpl/ # Шаблоны страниц
│ └── index.tpl.php
├── layout/ # Общие шапки и футеры
│ └── main/
│ ├── header.php
│ └── footer.php
└── vendor/ # Зависимости composer
Минимальная конфигурация
config/config.php
<?php return [ 'web' => [ 'site' => 'example.ru', 'name' => 'My App', 'shortcode' => 'app', ], 'dbpool' => [ 'default' => [ 'dsn' => 'mysql:dbname=mydb;host=127.0.0.1;port=3306;charset=utf8mb4', 'user' => 'root', 'password' => '', ] ], 'session' => 'auto', // 'auto', 'none', или имя класса модели пользователя 'output' => 'html', // 'html' или 'json' 'debug' => 'N', // 'Y' — показывать ошибки ];
app/App.php
<?php namespace MyApp; use IFMiniLib\Core; class App extends Core { }
public/index.php
<?php require_once __DIR__ . '/../vendor/autoload.php'; require_once __DIR__ . '/../app/App.php'; \MyApp\App::one()->init()->run();
app/WebActions/DefaultAction.php
<?php namespace MyApp\WebActions; use IFMiniLib\BaseAction; use IFMiniLib\Response; class DefaultAction extends BaseAction { public function run() { return Response::one()->set('<h1>Hello World</h1>')->sendAndExit(); } }