next/simple 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

next/simple

最新稳定版本:0.2.1

Composer 安装命令:

composer create-project next/simple

包简介

一款支持swoole/workerman/cli-server/FPM环境的PHP框架。

README 文档

README

Max

轻量 • 简单 • 快速

一款支持swoole, workerman, FPM环境的组件化的轻量PHP框架

环境要求

PHP  ^8.2

如果使用swoole,务必安装4.6以上版本,如果使用workerman, 务必使用4.0以上版本

使用

安装

composer config -g repo.packagist composer https://repo.packagist.org # 更换官方仓库
composer create-project next/simple

启动服务

php bin/cli-server.php           // 内置服务
php bin/swoole.php               // swoole
php bin/workerman.php            // workerman

FPM模式,将请求指向public/index.php即可

区别

使用swoole/workerman/amp/react等服务支持注解、AOP等特性, FPM模式可以直接卸载AOP包。

简单入门

路由定义

路由定义在 app/router.php 文件中,也可以使用注解定义(需要安装AOP包,且不支持FPM/内置服务)

下面是在app/router.php中定义的路由

$router->middleware(new SessionMiddleware(), new VerifyCSRFToken())
   ->group(function (Router $router) {
       $router->get('/', [new IndexController(), 'index']);
       $router->get('openapi', [new IndexController(), 'opanapi']);
   });

当你使用swoole/swoole/workerman/amp/reactphp并且使用了AOP就可以使用注解定义

<?php

namespace App\Controllers;

use App\Http\Response;use Next\Routing\Attribute\Controller;use Next\Routing\Attribute\GetMapping;use Psr\Http\Message\ResponseInterface;use Psr\Http\Message\ServerRequestInterface;

#[Controller(prefix: '/')]
class IndexController
{
    #[GetMapping(path: '/')]
    public function index(ServerRequestInterface $request): ResponseInterface
    {
        return Response::HTML('Hello, ' . $request->query('name', 'nextphp!'));
    }
}

如上请求0.0.0.0:8989 会指向index方法,控制器方法支持依赖注入,如需当前请求示例,则请求参数名必须是request ,其他路由参数均会被注入,控制器方法需要返回ResponseInterface实例。

其他文档

其他文档参考相应包的README

参与开发

欢迎有兴趣的朋友参与开发

统计信息

  • 总下载量: 28
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 26
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 26
  • Watchers: 0
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: Apache-2.0
  • 更新时间: 2023-10-31