承接 vir-mir/router 相关项目开发

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

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

vir-mir/router

Composer 安装命令:

composer require vir-mir/router

包简介

Simple PHP Router, supports REST and reverse routing.

README 文档

README

Обработка маршрутов

  • настраиваемые HTTP методы
  • REST - методы
  • Можно раскладывать по группам
  • Разделение URL по доменам

Установка через composer

{
    "require": {
        "vir-mir/router": "dev-master"
    }
}

Описание

Настройка URL

настройка для .htaccess

Options +FollowSymLinks
RewriteEngine On
RewriteRule ^(.*)$ index.php [NC,L]

Пример php реализации

<?php
require __DIR__.'/vendor/autoload.php';

use VMRouter\RouteCollection;
use VMRouter\Router;
use VMRouter\Route;

$collection = new RouteCollection();
$collection->attach(new Route('/users/', array(
    'controller' => 'Controller\User::usersCreateAction',
    'methods' => 'POST',
    'domains' => ['site.ru', 'strore.site.ru'], // будет работать только на указанных доменах
)));

$collection->attach(new Route('/users/(?P<user_id>\d+)/', array(
    'controller' => 'Controller\User::getUAction',
    'methods' => 'GET',
    'domains' => ['*'] // все домены 
)));

$router = new Router($collection);
$route = $router->matchCurrentRequest();

var_dump($route);

Загрузка из папки

<?php
// index.php

require __DIR__.'/vendor/autoload.php';

use VMRouter\Router;
use VMRouter\RouteCollection;

$router = new Router(new RouteCollection());

$route = $router
	->setRoutesDir(__DIR__ . '/router/') // путь до папки с Routes
	->setRoutes()
	->matchCurrentRequest();


var_dump($route);
<?php
// router/urers.php

use VMRouter\Route;

$routes = [];


array_push($routes, new Route('/users/', array(
			'controller' => 'someController::users_create',
			'methods' => 'GET'
		)));

array_push($routes, new Route('/users/(?P<user_id>\d+)/cover/', array(
			'controller' => 'someController::users_create',
			'methods' => 'GET'
		)));

array_push($routes, new Route('/users/(?P<user_id>\d+)/', array(
			'controller' => 'someController::users_create',
			'methods' => 'GET'
		)));


return $routes;

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2015-02-13