carlbennett/php-mvc

一个用于前端和/或后端的PHP微型框架

2.4.0 2022-10-01 11:23 UTC

README

Build Status

php-mvc 是一个与 @carlbennett 的项目一起使用的PHP标准库。这个库的愿望是将其作为中间件包含在项目网站上。

安装

此库可以通过 composerpackagist 获取。

composer require carlbennett/php-mvc
composer install

使用方法

以下是在项目中包含此库的示例。这假设您已经通过composer安装了库。

<?php

namespace MySuperAwesomeProject;

use \CarlBennett\MVC\Libraries\GlobalErrorHandler;
use \CarlBennett\MVC\Libraries\Router;
use \CarlBennett\MVC\Libraries\Template;
use \RuntimeException;

// Can be used to route requests.

$router = new Router(
    "\\MySuperAwesomeProject\\Controllers\\",
    "\\MySuperAwesomeProject\\Views\\"
);
$router->addRoute( // URLs: /home, /home.htm, /home.html
    // pattern, model, view
    '#^/home(?:\.html?)?$#', 'Home', 'HomeHtml'
);
$router->route();
$router->send();

// Custom template engine powered by pure PHP, utilizes include() and output buffers.

$context = null; // empty context, used to pass state to template
(new Template($context, 'HelloWorld'))->render(); // prints ./src/Templates/HelloWorld.phtml to the client.

// A dynamic error handler. Prints JSON if display_errors is ON, a friendly html page if OFF.

GlobalErrorHandler::createOverrides();
throw new RuntimeException('test');