PHPackages                             dimns/mflphp-project - 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. dimns/mflphp-project

ActiveProject[Framework](/categories/framework)

dimns/mflphp-project
====================

The skeleton of the application on MFLPHP.

v0.9.0(9y ago)026MITPHPPHP &gt;=5.4.0

Since Jul 27Pushed 8y agoCompare

[ Source](https://github.com/DimNS/MFLPHP-Project)[ Packagist](https://packagist.org/packages/dimns/mflphp-project)[ RSS](/packages/dimns-mflphp-project/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (1)Versions (23)Used By (0)

Project is deprecated.
----------------------

[](#project-is-deprecated)

Шаблон проекта использующий микро-фреймворк [MFLPHP](https://github.com/DimNS/MFLPHP)
=====================================================================================

[](#шаблон-проекта-использующий-микро-фреймворк-mflphp)

1. Установка и использование
============================

[](#1-установка-и-использование)

1.1. Создание нового проекта
----------------------------

[](#11-создание-нового-проекта)

- Устанавливаем копию скелета: `composer create-project dimns/mflphp-project /my/project/path`.
- Переходим в каталог созданного проекта.
- Запускаем `npm install`.
- Запускаем `gulp build` для сборки файлов. Или можно пользоваться скриптом: `gulp-build.cmd`.
- Запускаем `gulp` для автоматической пересборки при изменениях во время разработки. Или можно пользоваться скриптом: `gulp-watch.cmd`.

1.2. Сборка проекта
-------------------

[](#12-сборка-проекта)

- Переходим в каталог созданного проекта.
- Запускаем `gulp build`. Или можно пользоваться скриптом: `gulp-build.cmd`.

2. PHP
======

[](#2-php)

2.1. Middleware
---------------

[](#21-middleware)

Для проверки "пользователь в системе", "валидный токен" или "есть необходимые права доступа" достаточно выполнить хелпера-посредника:

```
$middleware = \MFLPHP\Helpers\Middleware::start($request, $response, $service, $di, [
    'auth',         // Пользователь залогинен в системе
    'token',        // Проверка валидности защитного csrf-токена
    'access-admin', // Проверка прав доступа
]);
if ($middleware) {
    // Этот код выполняется если все проверки выполнены
}
```

2.2. Отладка SQL-запросов
-------------------------

[](#22-отладка-sql-запросов)

Если в настройках включен режим DEBUG, тогда включается логирование всех SQL-запросов, которые можно получить как массив:

```
dump(\ORM::get_query_log());
```

2.3. Примеры хелперов
---------------------

[](#23-примеры-хелперов)

### Отправка письма

[](#отправка-письма)

```
$send_result = $di->mail->send('АДРЕС_ДЛЯ_ОТПРАВКИ', 'ТЕМА_ПИСЬМА', 'АДРЕС_ШАБЛОНА', [
    // Данные для подстановки в шаблон
]);
if ($send_result) {
    // Письмо успешно отправлено
} else {
    // Произошла ошибка
    // Подробнее можно посмотреть в логе по адресу /errors.log
}
```

- АДРЕС\_ШАБЛОНА - строка константы шаблона, размещается в файле `/app/Configs/EmailTemplates.php` в виде соответствующих констант.
- Данные для подстановки в шаблон - массив ключ-значение, где ключи это специальные строки (например: `[[SITE_NAME]]`), а значения - обычные строки для подстановки вместо ключа в шаблоне.

3. JS
=====

[](#3-js)

3.1. ajax (POST)
----------------

[](#31-ajax-post)

```
ajax.waiter('show');

$.ajax({
    url: '/controller/method',
    data: {
        // Параметры
    },
    success: function(result, textStatus, jqXHR) {
        // Обработка результата
    },
    complete: function() {
        ajax.waiter('hide');
    },
    error: function(jqXHR, textStatus, errorThrown) {
        ajax.error(textStatus, errorThrown);
    }
});
```

3.2. jsonp (GET)
----------------

[](#32-jsonp-get)

```
ajax.jsonp('/controller/method', {
    // Параметры
}, function(result) {
    ajax.waiter('hide');

    // Обработка результата
});
```

Возвращение результата на стороне php:

```
$result = [/* Ваш массив с данными результата */];
$response->json($result, $request->param('callback', 'callback'));
```

###  Health Score

25

—

LowBetter than 35% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~13 days

Recently: every ~37 days

Total

21

Last Release

3352d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/b39a0bb945f3720874aa4ab4a9ec7afd722a2f91d7df774ae82600d877bf3f00?d=identicon)[DimNS](/maintainers/DimNS)

---

Top Contributors

[![DimNS](https://avatars.githubusercontent.com/u/8703922?v=4)](https://github.com/DimNS "DimNS (124 commits)")

### Embed Badge

![Health badge](/badges/dimns-mflphp-project/health.svg)

```
[![Health](https://phpackages.com/badges/dimns-mflphp-project/health.svg)](https://phpackages.com/packages/dimns-mflphp-project)
```

###  Alternatives

[laravel/dusk

Laravel Dusk provides simple end-to-end testing and browser automation.

1.9k39.6M294](/packages/laravel-dusk)[nineinchnick/edatatables

Grid widget for the Yii Framework, wrapper for the DataTables jQuery plugin

173.2k](/packages/nineinchnick-edatatables)[link-cloud/fast-hyperf

LinkCloud Fast Hyperf

241.2k1](/packages/link-cloud-fast-hyperf)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
