承接 devpontes/route 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

devpontes/route

最新稳定版本:v3.0.0

Composer 安装命令:

composer require devpontes/route

包简介

Simples componente de rotas para projetos pequenos baseados em MVC

README 文档

README

Maintainer Source Code PHP from Packagist Latest Version Software License Build Quality Score Total Downloads

About Route componet

Route is a simple and lightweight route management component designed for small projects based on MVC architecture.

O Route é um componente simples e leve de gerenciamento de rotas, projetado para pequenos projetos baseados em arquitetura MVC.

Highlights

  • Suporte a rotas nomeadas. (named routes)
  • Modo estrito para diferenciação de URLs. (strict mode)
  • Configuração simples e intuitiva. (simple to set up)
  • Padrão de rota: controller/method/{parameter}.

Instalação

Installation is available through Composer:

"devpontes/route": "3.*"

or run

composer require devpontes/route

Documentation

1. Configuração

To use Route, all application requests must be redirected to the index.php file, which will act as the Front Controller. Example using Apache (.htaccess)

Para utilizar o Route, todas as requisições da aplicação devem ser redirecionadas para o arquivo index.php, que atuará como o Front Controller. Exemplo usando o Apache (.htaccess):

Apache

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l

RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]

2. Definição de Rotas

Routes must be defined in an array in the format [path, controller@method]

As rotas devem ser definidas em um array no formato [path, controller@method]:

$routes = [
    ['/', 'Home@index'],
    ['/blog', 'Blog@index'],
    ['/contato', 'Contact@index'],
    ['/contato/{id}', 'Contact@index'],
    ['/not-found/404', 'Notfound@index'],
];

3. Captura da URL

The request URL must be captured and passed to the component in the constructor or via the setter method.

A URL da requisição deve ser capturada e passada ao componente no construtor ou via metodo setter. Exemplo com servidor Apache:

$url = $_GET['url'];

ou usando a pasta publica

$url = $_SERVER['REQUEST_URI'];

4. Inicialização

On component initialization: 1 - Enter the routes array; 2 - Configure the controllers' namespace (the same as defined in composer.json); 3 - Run with the run() method.

Na inicialização do componente:

  1. Informe o array de rotas.
  2. Configure o namespace dos controladores (mesmo definido no composer.json).
  3. Execute com o método run().
Usage
$route = new \DevPontes\Route\Route($routes);
$route->setUrl($url);
$route->namespace("App\Controller");
$route->run();

5. Tratamento de Erros

To capture unconfigured routes, use the fail method

Para capturar rotas não configuradas, utilize o método fail:

if ($route->fail()) {
    header('Location: /not-found/404');
}

6. Modo Estrito

Strict mode differentiates between routes with and without trailing slashes.

O modo estrito diferencia rotas com e sem barra final. Exemplo:

  • /sobre/sobre/ (strict mode enabled).
  • /sobre = /sobre/ (strict mode disabled).
Enabling/disabling
$route->setStrictMode(true);

Credits

License

The MIT License (MIT).

统计信息

  • 总下载量: 32
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 3
  • 点击次数: 2
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 3
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2022-11-22

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固