guss77/kohana-routing 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

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

guss77/kohana-routing

最新稳定版本:1.1.4

Composer 安装命令:

composer require guss77/kohana-routing

包简介

Kohana >= 3.3 module for setting up routes through a configuration file

README 文档

README

Stop using bootstrap.php to set your Kohana routes - routing is just another configuration file now!

Installation

  1. add guss77/kohana-routing to your composer.json, or run composer require guss77/kohana-routing
  2. edit your bootstrap.php to add the kohana-routing module and remove the Route::set() call from the bottom of the file

The built-in configuration file includes a replacement for the default Route::set() code.

Usage

Instead of adding Route::set() calls in the bootstrap.php code, copy the routes.php config file from the module to your application, and add the rules there.

The configuration format is very simple - its an array of routing rules, where each element in the top level of the array represents a single Route::set call. For each rule:

  • The rule "key" is the name of the route and corresponds to the first argument to Route::set()
  • The rule "value" is an array with the following keys:
    • 'uri' - the rule expressions used to parse the URI, corresponds to the second argument to Route::set()
    • 'defaults' - optional array that defines the default values for the route expression values, corresponds to the defaults() call on the Route instance
    • 'rules' - optional array that contains regular expressions to limit the matching of the route expression to only parameters with valid values. This corresponds to the third argument to Route::set()

Example Configuration

The following snippets demonstrates how to set up rules in the configuration file, but omit the config file boilerplate (the PHP decleration and return array syntax).

  1. Default Koahan route
	'default' => [
		'uri' => '(<controller>(/<action>(/<id>)))',
		'defaults' => [
			'controller' => 'welcome',
			'action'     => 'index',
		],
	],
  1. Routes that load controllers from subdirectories
  'admins' => [
    'uri' => 'backoffice/(controller(/<action>))',
    'defaults' => [
      'directory' => 'admin',
      'controller' => 'backoffice',
      'action' => 'menu',
    ],
  ],
  'clients' => [
    'uri' => '(/controller(/<action>))',
    'defaults' => [
      'directory' => 'users',
      'controller' => 'welcome',
      'action' => 'index',
    ],
  ],
  1. Route with argument validation
  'categories' => [
    'uri' => 'cat/<category>',
    'rules' => [
      'category' => '[a-z\-_\.]+',
    ],
    'defaults' => [
      'controller' => 'categories',
      'action' => 'category',
    ],
  ],

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: BSD-3-Clause
  • 更新时间: 2015-05-03