ovalves / selene
简单微框架
dev-main
2021-12-10 03:55 UTC
Requires
- php: ^8.0
- fig/http-message-util: ^1.1.2
- filp/whoops: 2.13.0
- psr/container: ^1.0
- psr/http-message: ^1.0.1
- psr/http-server-middleware: ^1.0
- symfony/console: 5.3.2
- symfony/dotenv: ^5.3
- symfony/http-foundation: ^5.1
Requires (Dev)
- phpmd/phpmd: @stable
- phpunit/phpunit: ^9.0
- squizlabs/php_codesniffer: 3.5.*
Suggests
- filp/whoops: To make reading errors easier
- symfony/console: For using the console generators
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许可证。有关更多信息,请参阅许可证文件。