예제 #1
0
파일: Router.php 프로젝트: websitetest/c9
 public function matchRequest(Request $request)
 {
     if (!$this->matcher instanceof RouteMatcherInterface) {
         throw new LogicException('The Router has no route matcher, Router needs a RouteMatcherInterface instance');
     }
     return $this->matcher->match($request->pathInfo());
 }
예제 #2
0
파일: index.php 프로젝트: websitetest/c9
<?php

include 'config/config.php';
include 'vendor/autoload.php';
use src\Framework\lib\Routing\RouteCollection;
use src\Framework\lib\Routing\Route;
use src\Framework\lib\AppCore\AppCore;
use src\Framework\lib\HTTP\Request;
use src\Framework\lib\Routing\Router;
use src\Framework\lib\Routing\Matcher\RouteMatcher;
$request = Request::createFromGlobals();
$routes = new RouteCollection();
$routes->add(new Route('default', '', 'DefaultController', 'defaultAction'));
$routes->add(new Route('login', 'login', 'LoginController', 'defaultAction'));
$routes->add(new Route('basket_add', 'basket/add/:id/:debug', 'BasketController', 'addProduct'));
$routes->add(new Route('basket_remove', 'basket/remove/:id', 'BasketController', 'removeProduct'));
$router = new Router();
$matcher = new RouteMatcher();
$matcher->setRoutes($routes);
$router->setMatcher($matcher);
$app = new AppCore();
//$app->setRoutes($routes);
//$app->handleRequest($request);
//$app->output();
try {
    $r = $router->match($_GET['r']);
    //var_dump($r);
    $app->handle($request, $r[0], $r[1]);
} catch (\Exception $e) {
    echo $e->getMessage();
}
예제 #3
0
파일: AppCore.php 프로젝트: websitetest/c9
 public function handleRequest(Request $request)
 {
     echo $request->pathInfo();
 }