PHPCenter - Twoje Centrum Informacji - PHP, Szkolenia, Biblioteki, Licencje i nie tylko...
Twoje Centrum Informacji
PHP, Szkolenia i nie tylko...

Route – ThePhpLeague – routing

Biblioteka odpowiadająca za routing aplikacji, kompatybilna z wieloma standardami PSR. Szybka i uniwersalna, zbudowana na podstawie FastRoute autorstwa Nikity Popov.

Composer Install

Do użycia potrzebujesz samej biblioteki Route, oraz jednej z bibliotek, które używają PSR-7 do obsługi żądań, na przykład Zend Diactoros. Gdy użyjesz Zend Diactoros zainstaluj również bibliotekę Zend HttpHandlerRunner.

composer require league/route
composer require zendframework/zend-diactoros
composer require zendframework/zend-httphandlerrunner

Przykład użycia

use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Zend\Diactoros\ServerRequestFactory;
use Zend\Diactoros\Response;
use Zend\HttpHandlerRunner\Emitter\SapiEmitter;
use League\Route\Router;

// Tworzymy Request ze zmiennych globalnych PHP
$request = ServerRequestFactory::fromGlobals(
    $_SERVER, $_GET, $_POST, $_COOKIE, $_FILES
);

$router = new Router;

// Mapujemy route z funkcją, która ma zostać wysołana
$router->map('GET', '/', function (ServerRequestInterface $request) : ResponseInterface {
    $response = new Response;
    $response->getBody()->write('<h1>Hello, World!</h1>');
    return $response;
});

// Dispatch odpowiada za transformacie Request do Response na podstawie zdefiniowanych powyżej map
$response = $router->dispatch($request);

// Wysyłamy odpowiedź do przeglądarki
(new SapiEmitter)->emit($response);

 

3820cookie-checkRoute – ThePhpLeague – routing
A co tam, udostępnij:
avatar
  Subscribe  
Powiadom o
Wyszukaj