PHPackages                             flexis-labs/flexis - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Framework](/categories/framework)
4. /
5. flexis-labs/flexis

ActiveLibrary[Framework](/categories/framework)

flexis-labs/flexis
==================

The Flexis PHP framework

v1.0.0(1y ago)03MITPHP

Since Dec 7Pushed 10mo ago1 watchersCompare

[ Source](https://github.com/flexis-labs/flexis)[ Packagist](https://packagist.org/packages/flexis-labs/flexis)[ RSS](/packages/flexis-labs-flexis/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (14)Versions (2)Used By (0)

Flexis Framework
================

[](#flexis-framework)

**Flexis** — современный высокопроизводительный PHP-фреймворк для создания масштабируемых веб-приложений. Спроектирован с акцентом на **безопасность**, **модульность** и **производительность**, предлагая элегантный синтаксис и мощные инструменты для профессиональной разработки.

 ```
graph TD
    subgraph Flexis Framework
        direction TB

        subgraph DIP_Container["Контейнер DI (Dependency Injection)"]
            direction LR
            Reg[Регистрация сервисов]
            Res[Разрешение зависимостей]
            Lifecycle[Управление жизненным циклом]
            Factory[Фабрики объектов]
            AutoWire[Автоматическое связывание]

            Reg -->|Типы регистрации| Lifecycle
            Res -->|ConstructorPropertyMethod| AutoWire
            Factory -->|Кастомные фабрики| Res
        end

        subgraph Core[Ядро]
            Router[Маршрутизатор]
            Auth[Авторизация]
            Profiler[Профилирование]
            Filter[Фильтрация данных]
            EventDispatcher[Диспетчер событий]
            SessionManager[Менеджер сессий]
        end

        subgraph Databases["Подсистема БД"]
            DB_Adapter["IDatabaseAdapter (Абстракция)"]
            MySQL --> DB_Adapter
            PostgreSQL --> DB_Adapter
            SQLite --> DB_Adapter
            SQLServer --> DB_Adapter
        end

        App[Приложение] --> DIP_Container
        DIP_Container --> Core
        DIP_Container --> Databases
        DIP_Container --> SessionManager
    end
```

      Loading 🔐 Ключевые преимущества
-----------------------

[](#-ключевые-преимущества)

### 1. Система безопасности Enterprise-уровня

[](#1-система-безопасности-enterprise-уровня)

- **Многоуровневая фильтрация** всех входных данных (`REQUEST`, `GET`, `POST`, `FILES`, `SERVER`, `ENV`)
- Автоматическая защита от:
    - SQL-инъекций через параметризованные запросы
    - XSS-атак с контекстным экранированием
    - CSRF с токенами сессии
    - Data Tampering через цифровые подписи
- Интеграция с политиками Content Security Policy (CSP)

```
// Пример безопасной обработки
$validator = new Flexis\Security\InputValidator();
$email = $validator->filter($_POST['email'], 'email', FILTER_SANITIZE_EMAIL);
```

### 2. Принцип инверсии зависимостей (SOLID)

[](#2-принцип-инверсии-зависимостей-solid)

 ```
classDiagram
    class LoggerInterface {

        +log(message)
    }
    class FileLogger {
        +log(message)
    }
    class DatabaseLogger {
        +log(message)
    }
    class Application {
        -LoggerInterface $logger
        +__construct(LoggerInterface $logger)
    }
    Application --> LoggerInterface
    FileLogger ..|> LoggerInterface
    DatabaseLogger ..|> LoggerInterface
```

      Loading - Автоматическое разрешение зависимостей через DI-контейнер
- Поддержка интерфейсов и абстрактных классов
- Функционал тегирования сервисов
- Продвинутые сценарии:
    - Декораторы сервисов
    - Фабричные методы
    - Конфигурация на основе атрибутов

### 3. Унифицированный доступ к базам данных

[](#3-унифицированный-доступ-к-базам-данных)

**Поддерживаемые СУБД:**

ДрайверПоддержкаОсобенности**MySQL**✅ NativeПоддержка репликации**PostgreSQL**✅ NativeJSONB-операторы**SQLite**✅ FullВстроенное шифрование**SQL Server**✅ FullИнтеграция с Azure**Мониторинг производительности:**

```
// Анализ запроса
$query = DB::table('users')->where('active', 1);
$performance = $query->analyze();

// Возвращает:
[
  'execution_time' => '2.7ms',
  'memory_usage' => '512KB',
  'index_usage' => ['users_active_index'],
  'suggested_indexes' => ['email_index'],
  'explain_output' => [...]
]
```

### 4. Событийно-ориентированная архитектура

[](#4-событийно-ориентированная-архитектура)

**Диспетчер событий с продвинутым профилированием:**

```
// Регистрация события
$dispatcher->listen('order.created', function(OrderEvent $event) {
    // Обработка заказа
});

// Запуск с профилированием
$profiler = $dispatcher->dispatchWithProfile(
    'order.created',
    new OrderEvent($order)
);

// Анализ метрик
$report = $profiler->getReport();
/*
[
  "event" => "order.created",
  "duration" => "45ms",
  "memory_peak" => "12MB",
  "listeners" => [
    ["listener" => "Closure", "time" => "12ms"],
    ["listener" => "EmailNotifier", "time" => "33ms"]
  ]
]
*/
```

⚙️ Установка и настройка
------------------------

[](#️-установка-и-настройка)

### Требования:

[](#требования)

- PHP 8.1+ (с JIT-компиляцией)
- Extensions: PDO, JSON, MBString, OpenSSL
- Composer 2.0+

### Быстрый старт:

[](#быстрый-старт)

```
composer create-project flexis/flexis my-app
cd my-app
```

🚀 Пример приложения
-------------------

[](#-пример-приложения)

```
