Шаблон проекта использующий микро-фреймворк MFLPHP
- Устанавливаем копию скелета:
composer create-project dimns/mflphp-project /my/project/path
. - Переходим в каталог созданного проекта.
- Запускаем
npm install
. - Запускаем
gulp build
для сборки файлов. Или можно пользоваться скриптом:gulp-build.cmd
. - Запускаем
gulp
для автоматической пересборки при изменениях во время разработки. Или можно пользоваться скриптом:gulp-watch.cmd
.
- Переходим в каталог созданного проекта.
- Запускаем
gulp build
. Или можно пользоваться скриптом:gulp-build.cmd
.
Для проверки "пользователь в системе", "валидный токен" или "есть необходимые права доступа" достаточно выполнить хелпера-посредника:
$middleware = \MFLPHP\Helpers\Middleware::start($request, $response, $service, $di, [
'auth', // Пользователь залогинен в системе
'token', // Проверка валидности защитного csrf-токена
'access-admin', // Проверка прав доступа
]);
if ($middleware) {
// Этот код выполняется если все проверки выполнены
}
Если в настройках включен режим DEBUG, тогда включается логирование всех SQL-запросов, которые можно получить как массив:
dump(\ORM::get_query_log());
$send_result = $di->mail->send('АДРЕС_ДЛЯ_ОТПРАВКИ', 'ТЕМА_ПИСЬМА', 'АДРЕС_ШАБЛОНА', [
// Данные для подстановки в шаблон
]);
if ($send_result) {
// Письмо успешно отправлено
} else {
// Произошла ошибка
// Подробнее можно посмотреть в логе по адресу /errors.log
}
- АДРЕС_ШАБЛОНА - строка константы шаблона, размещается в файле
/app/Configs/EmailTemplates.php
в виде соответствующих констант. - Данные для подстановки в шаблон - массив ключ-значение, где ключи это специальные строки (например:
[[SITE_NAME]]
), а значения - обычные строки для подстановки вместо ключа в шаблоне.
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);
}
});
ajax.jsonp('/controller/method', {
// Параметры
}, function(result) {
ajax.waiter('hide');
// Обработка результата
});
Возвращение результата на стороне php:
$result = [/* Ваш массив с данными результата */];
$response->json($result, $request->param('callback', 'callback'));