PHPackages                             elzobrito/olivia-router - 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. [HTTP &amp; Networking](/categories/http)
4. /
5. elzobrito/olivia-router

ActiveLibrary[HTTP &amp; Networking](/categories/http)

elzobrito/olivia-router
=======================

Router php

2.3(2mo ago)01971MITPHPPHP ^7.1|^8.2.4

Since Nov 1Pushed 2mo ago1 watchersCompare

[ Source](https://github.com/elzobrito/OliviaRoute)[ Packagist](https://packagist.org/packages/elzobrito/olivia-router)[ RSS](/packages/elzobrito-olivia-router/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (6)DependenciesVersions (7)Used By (1)

OliviaRouter
============

[](#oliviarouter)

**Um roteador PHP simples, leve e performático** inspirado em frameworks modernos como Laravel e Symfony.

Mantém compatibilidade com a versão original, mas com melhorias importantes: CSRF validado no dispatcher, código mais organizado, suporte a `PUT`/`DELETE`/`PATCH` e núcleo unificado com `Request`, `Route`, `RouterConfig` e `Trie`.

---

Recursos
--------

[](#recursos)

- Rotas por método HTTP: `GET`, `POST`, `PUT`, `DELETE`, `PATCH`
- Parâmetros dinâmicos como `{id}` e `{slug}`
- Middlewares por rota via chaining
- Proteção CSRF opcional
- Factories para controllers e middlewares
- Matching centralizado com `Trie`
- Compatibilidade com o fluxo legado baseado em `execute($request_data)`

---

Requisitos
----------

[](#requisitos)

- PHP 7.4 ou superior
- Composer autoload configurado
- Cookies habilitados no navegador
- Opcionalmente, compatibilidade com sessão legada via `session_start()`

---

Instalação
----------

[](#instalação)

1. Instale ou copie o pacote para o projeto.
2. Gere o autoload do Composer, se necessário:

```
composer dump-autoload
```

3. Configure os cookies do roteador no bootstrap da aplicação:

```
