PHPackages                             hnqca/router-php - 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. [API Development](/categories/api)
4. /
5. hnqca/router-php

ActiveLibrary[API Development](/categories/api)

hnqca/router-php
================

Uma biblioteca PHP leve e intuitiva para gerenciar rotas, oferecendo suporte a padrões MVC, middlewares, verbos RESTful, parâmetros de caminho e consulta.

v1.0.0(2y ago)017MITPHPPHP ^8.0

Since Apr 5Pushed 2y ago1 watchersCompare

[ Source](https://github.com/hnqca/router-php)[ Packagist](https://packagist.org/packages/hnqca/router-php)[ RSS](/packages/hnqca-router-php/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)DependenciesVersions (2)Used By (0)

Router PHP
==========

[](#router-php)

Suporte a padrões MVC, middlewares, verbos RESTful mais comuns (GET, POST, PUT, PATCH e DELETE), permitindo lidar facilmente com parâmetros de URL e consultas. Facilitando na criação de URLs amigáveis e APIs RESTful.

---

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

[](#instalação)

via [composer](https://getcomposer.org/):

```
composer require hnqca/router-php
```

---

Exemplos:
---------

[](#exemplos)

No diretório "**[example](https://github.com/hnqca/router-php/tree/main/example)**", você encontrará alguns exemplos que demonstram como usar esta biblioteca.

---

Configuração:
-------------

[](#configuração)

Para garantir que as rotas funcionem corretamente, é necessário redirecionar todo o tráfego para o arquivo principal de rotas (**index.php**).

Abaixo estão as configurações necessárias para realizar esse redirecionamento, tanto para Apache quanto para Nginx.

### Apache (.htaccess):

[](#apache-htaccess)

```
RewriteEngine On
Options All -Indexes

## WWW Redirect.
# RewriteCond %{HTTP_HOST} !^www\. [NC]
# RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

## HTTPS Redirect
# RewriteCond %{HTTP:X-Forwarded-Proto} !https
# RewriteCond %{HTTPS} off
# RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

# URL Rewrite
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php?uri=/$1 [L,QSA]
```

### Nginx:

[](#nginx)

```
location / {
  if ($script_filename !~ "-f"){
    rewrite ^(.*)$ /index.php?uri=/$1 break;
  }
}
```

Exemplo de Rotas (index.php):
-----------------------------

[](#exemplo-de-rotas-indexphp)

```
