皮米像素/纳米框架

0.7.0 2022-01-30 17:44 UTC

This package is auto-updated.

Last update: 2024-09-02 16:47:02 UTC


README

注意

截至2021年,此产品不再有免费支持团队。如果您想维护此产品,请支持我的工作。

备注

(此产品可在免费和宽松的许可证下使用,但需要财务支持以维持其持续改进。除了维护和稳定性外,还有许多希望添加的功能。)

logo

纳米框架

Build Status Latest Stable Version Minimum PHP Version Scrutinizer Code Quality Code Coverage License PayPal donation Buy me a coffee Buy me a coffee

纳米是一个非常简单、愚蠢的框架,处理起来非常容易,效率也很高。

它仅实现了MVC设计模式中的C部分(控制器),允许开发者为其他部分使用任何其他现有的库

安装

composer require femtopixel/nano-framework

引导

您所有的请求都可以重定向到您的引导(假设为index.php)

<?php
require_once ('vendor/autoload.php');
$nano = new \Nano\Framework();
$nano->dispatch();

就这些!

它是如何工作的?

有了这个,您现在可以这样访问您的页面

http://mysite.tld/ <controller>/<action>

它将加载类 \Project\Controller\<controller>::<method><action>Action

您可以轻松配置您的命名空间、控制器包和操作后缀!

<method> 表示使用的HTTP方法(通常是 get,但您可以使用post/update/delete等...)。这是可选的。

<controller> 或 <action> 都是可选的,如果未定义,则视为 'index'。

因此

参数匹配

从0.6.0版本开始,您可以使用 "参数匹配"

在分发时简单激活它

require_once ('vendor/autoload.php');
$nano = new \Nano\Framework();
$nano->setParameterMatching()->dispatch();

然后您就可以这样使用它

<?php
namespace \Project\Controller;

class MyAwesomeController
{
    public function getHelloAction($age, $name)
    {
        echo "Hello $name, I'm {$age}yo"; //please, use this code for test only
    }
}

并调用 http://mysite.tld/myawesomecontroller/hello?name=World&age=900 来显示 "Hello World, I'm 900yo" !