shaggy8871 / frame
Frame 是一个轻量级的 PHP MVC 路由框架
1.0.0
2016-12-30 15:03 UTC
Requires
- php: >=5.4.1
- twig/twig: ~1.0
Requires (Dev)
- phpunit/phpunit: 4.4.*
This package is auto-updated.
Last update: 2024-09-28 22:10:30 UTC
README
Frame 是一个轻量级的 PHP MVC 路由框架。它易于开始使用,几乎不需要配置,并且可以在现有项目中运行,无需进行重大重写。
安装
在 composer.json 中
"require": {
"shaggy8871/frame": "dev-master"
}
然后运行
composer install
示例 index.php 文件
<?php include_once "../vendor/autoload.php"; /* * Format: * 'domain' => ['Project name', '/path/to/project/files', debugMode] */ $projects = [ $_SERVER['HTTP_HOST'] => ['Myapp', '../src', true], ]; $app = new Frame\Core\Init($projects); // Start 'em up $app->run();
控制器示例
<?php namespace Myapp\Controllers; use Frame\Core\Controller; use Frame\Core\Url; use Frame\Request\Get; use Frame\Response\Twig; class Index extends Controller { /** * Add your controller-specific route lookups here if required */ public function routeResolver(Url $url) { } /** * This is the home page */ public function routeDefault(Get $request, Twig $response) { return [ 'title' => 'Welcome to Frame', 'content' => 'You\'re on the home page. You can customize this view in <Yourapp>/Views/Index/default.html.twig and <Yourapp>/Views/base.html.twig.' ]; } /** * This is an example about us page */ public function routeAbout(Get $request, Twig $response) { $response->setViewFilename('Index/default.html.twig'); return [ 'title' => 'About Us', 'content' => 'You can customize this page in <Yourapp>/Views/Index/about.html.twig.' ]; } }
(更多详细文档即将推出...)