ovalves/selene

简单微框架

维护者

详细信息

github.com/ovalves/selene

源代码

问题

安装: 48

依赖者: 0

建议者: 0

安全性: 0

星标: 0

关注者: 1

分支: 0

开放性问题: 0

类型:项目

dev-main 2021-12-10 03:55 UTC

This package is auto-updated.

Last update: 2024-09-10 09:47:57 UTC


README

Selene是一个PHP微框架。

Selene是为了简化大多数Web项目常用的任务而开发的,Selene具有以下功能

  • MVC系统
  • 路由系统
  • 依赖注入系统
  • 会话管理
  • 用户认证
  • MySQL和MongoDB的查询构建器。
  • 模板引擎系统
  • 中间件系统
  • 用户重定向系统
  • 文件系统管理
  • 日志管理

安装

建议使用Composer来安装Selene。

$ composer require ovalves/selene "dev-master@dev"

这将安装Selene及其所有依赖项。Selene需要PHP 8.0或更高版本。

基本用法

创建一个包含以下内容的index.php文件

<?php

require 'vendor/autoload.php';

/*
|--------------------------------------------------------------------------
| Obtendo uma instância de Selene Framework
|--------------------------------------------------------------------------
|
| '/var/www/html/app/' é o mapeamento da raiz da nossa aplicação
*/
$app = Selene\App\Factory::create('/var/www/html/app/');

/*
|--------------------------------------------------------------------------
| Usando o roteador para registrar as rotas da sua aplicação
|--------------------------------------------------------------------------
| No caso abaixo, estamos criando um grupo nomeado 'auth'
|
| A criação de grupo de rotas serve para facilitar a utilização dos middlewares
*/
$app->route()->group('auth', function () use ($app) {

    /*
    |--------------------------------------------------------------------------
    | Neste caso, estamos adicionando o middleware de autentição
    |--------------------------------------------------------------------------
    | Esse middleware será executado em todas as rotas que pertencerem a esse grupo
    */
    $app->route()->middleware([new Selene\Middleware\Handler\Auth]);

    /*
    |--------------------------------------------------------------------------
    | Esta rota responde como um callable
    |--------------------------------------------------------------------------
    */
    $app->route()->get('/callable', function () use ($app) {
        $app->json('Hello World!!!');
    });

    /*
    |--------------------------------------------------------------------------
    | Mapeamento de método HTTP da request com a solicitação HTTP do cliente
    |--------------------------------------------------------------------------
    */
    $app->route()->get('/', 'HomeController@index');
    $app->route()->get('/show/{id}', 'HomeController@show');
    $app->route()->update('/show/{id}', 'HomeController@show');
    $app->route()->delete('/show/{id}', 'HomeController@show');
    $app->route()->post('/show', 'HomeController@login');
})->run();

示例

更多示例,请访问https://github.com/ovalves/selene-skeleton

许可证

Selene框架使用MIT许可证。有关更多信息,请参阅许可证文件