安全/phinatra

Phinatra是一个轻量级的PHP路由器,灵感来源于Sinatra,非常适合轻量级或RESTful应用程序。

1.2.2 2018-12-09 00:36 UTC

This package is not auto-updated.

Last update: 2024-09-23 14:44:24 UTC


README

Phinatra是一个轻量级的URI路由器,编写时旨在与Ruby的Sinatra大致相似。它提供了模型-视图-控制器(MVC)的控制器层,如果与例如Doctrine用于模型和Twig用于视图结合使用,可以形成一个MVC应用程序。

使用示例

<?php

require 'vendor/autoload.php';

use Sikker\Phinatra\Request;
use Sikker\Phinatra\Response;
use Sikker\Phinatra\Router\Router;
use Sikker\Phinatra\Router\RouterException;
use Sikker\Phinatra\Router\Route;
use Sikker\Phinatra\Router\Path;

$path = new Path();
$router = new Router($path);

$router->attach(new Route('/menu/for/tonight', function(Request $request, Response $response){
	$response->setOutput('Spam, egg, sausage and spam');
	return $response;
}));

try {
	$response = $router->route(new Request($path), new Response());
} catch (RouterException $e) {
	$response = new Response();
	$response->setStatusCode(404);
	$response->setOutput( $e->getMessage() );
}

$response->handle();