1. Go to this page and download the library: Download arveres/route library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
arveres / route example snippets
use ArveresRoute\Http\Router;
$router = new Router; //Instância de Router
//Rota básica GET
$router->get('/', [HomeController::class, 'index']);
//Rota básica POST
$router->post('/user/register', [UserController::class, 'store']);
// Rotas com parâmetros dinâmicos
$router->get('/user/{id}', [UserController::class, 'show']);
// Rotas com middlewares
// Middlewares passado como array no terceiro parâmetro.
// O nome do middleware passado como parâmetro deve estar registrado com a classe Queue
$router->get('/list', [HomeController::class, 'list'], ['stringTrim']);
// Executa as rotas
$router->run();
class HomeController
{
// Todo controlador associado a rota possui como parâmetro
// Uma instância de Request que pode ser omitido.
public function index()
{
echo 'Página inicial :)';
}
}
class UserController
{
// Instância de Request como parâmetro ao método controlador
public function store(Request $request)
{
UserModel::create($request->allPost());
//...
}
// Em rotas dinâmicas, o método do controlador associado
// Recebe como parâmetro o nome da variável da rota dinâmica
// OBS: Os parâmetros devem seguir a ordem das variáveis da rota
// Por fim possuem uma instância de Request
public function show($id, Request $request)
{
UserModel::findBy($id):
/...
}
}
use ArveresRoute\Http\Middlewares\Queue; // Referência para Queue
// Registra middlewares
Queue::routeMiddleware([
'maintenance' => \ArveresRoute\Http\Middlewares\Maintenance::class,
'stringTrim' => \ArveresRoute\Http\Middlewares\trimString::class
]);
// Define middleware padrão para todas as rotas
Queue::middlewareDefault([
'maintenance',
]);
// A biblioteca possui um interface opcional que pode ser utilizado nas classes de middleware
interface MiddlewareInterface // ArveresRoute\Http\Middlewares;
{
public function handle(Request $request, Closure $next);
}
// Exemplo de middleware
class Maintenance implements MiddlewareInterface
{
public function handle(Request $request, Closure $next)
{
$ItIsInMaintenance = true;
if (true === $ItIsInMaintenance) {
throw new \Exception('A aplicação está em manutenção. Por favor, tente mais tarde', 200);
}
return $next($request);
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.