php仿u8系统模板_QueryPHP 1.1.0-alpha.2 发布,模板引擎精简和 PHP 8 注解路由

QueryPHP 1.1.0-alpha.2 主要是对模板引擎和路由进行改造,大幅度删减模板引擎功能,并且调整模板语法。路由由 Swagger-PHP 包提供的注解路由,现改为使用 PHP-8 属性作为数据源的注解路由。例外也做了不少的修复和调整。

模板引擎变更

语法变更,删除了大量功能,删掉了 1000+ 行代码,更精简了。

<if condition="'You' eq $name">
    欢迎进入 {$QueryPHP} 开发者世界!
</if>

变更为

{% if "'You' == $name" %}
    欢迎进入 {{ $QueryPHP }} 开发者世界!
{% :if %}

PHP 8 注解路由

去掉 Swagger-php 包的依赖,更加轻便了。

<?php

namespace AppAppControllerSwagger;

class ApiDemo 
{
    /**
     * @OAGet(
     *     path="/swagger/api/v1/demo/{name}/",
     *     summary="Just test the router",
     *     @OAParameter(
     *         name="name",
     *         in="path",
     *         description="name test",
     *         required=true,
     *         @OASchema(
     *             type="string",
     *         )
     *     ),
     *     @OAResponse(
     *         response=405,
     *         description="Invalid input"
     *     ),
     * )
     */
    public function index(string $name): string
    {
        return 'swagger api demo '. $name;
    }
}

变更为

<?php

namespace AppAppControllerSwagger;

class ApiDemo 
{
    #[Route(
        path: "/swagger/api/v1/demo/{name:[A-Za-z]+}/",
    )]
    public function index(string $name): string
    {
        return 'swagger api demo '. $name;
    }
}  

QueryPHP 最低支持版本 PHP 8,系统依赖的 composer 包尚未支持 PHP 8,运行 QueryPHP-1.1.0-alpha.2 需要安装 PHP 8 版本。然后,composer 安装时忽略版本即可安装和运行。

brew install shivammathur/php/php@8.0
composer create-project hunzhiwange/queryphp myapp dev-master --ignore-platform-req
php leevel server <Visite http://127.0.0.1:9527/>

功能更新应用 application

变更

  • #ed8a869 refactor: 删除所有协程演示控制器,减少初始应用的臃肿

优化

  • #e246938 refactor: 移动 router/swagger 文件到 router/apis.
  • #ce298f2 refactor: 整理事件代码
  • #c84c32a,#dc5fb50,#3c5c524,#df5ab96,#5b03f8b refactor: 整理控制器代码
  • #7667a7c,#b00c9b0 refactor: 更新模板文件
  • #91a8597,#91a8597,#df4fdb2 refactor: 更新部分代码注释

框架核心 framework

修复

  • #893e952 refactor(database): 修复实体无法设置数据库连接
  • #5f6dd5d fix(protocol): 修复 Swoole 错误 Uncaught ErrorException: unsupported option [xxx] in @swoole-src/library/core/Server/Helper.php:160

优化

  • #95822e0 refactor: LeevelCacheIBlock:handle 类添加 mixed 返回值类型
  • #d59554c refactor(database): 优化 make:entity 命令,去掉 @var 标记生成
  • #6f640e0,#0dd96ff,#100eba2 refactor: 使用 {@ inheritdoc} 从父类或者接口继承 docblock,减少重复注释
  • #ff58f3e refactor(view): 优化代码
  • #1c1b8c0 refactor(ddd): 优化实体代码

变更

  • #80fe1e9,#e512f2a,#431f888 refactor(view): 模板大幅度精简和优化,启用新的模板语法标签
  • #b0d16bc,#1bb015c,#bc8db8c,#75df836,#283fb62,#e463354 refactor(router): 采用 PHP 8 属性实现注解路由,去掉之前的基于 OpenApi 3.0 的 Swagger-PHP 包的路由
  • #853613b fix(kernel): 修复 IdeHelper 错误
  • #cd73dc4 refactor: 删除 LeevelRouterView 和优化视图代码
  • #80a47ff refactor(mail): 修复邮件中的视图,因为视图组件的变更

测试和文档

  • #f606ee7 docs: 文档方法添加返回类型 void
  • #75df836,#e463354 docs(router): 更新路由文档

开发路线

1.0. 处于维护 阶段,1.1.* 系列开启。

关于 QueryPHP

e8969064e6c79a104e7127f4235b7c52.png

QueryPHP 是一款现代化的高性能 PHP 渐进式框架, 以提供稳定可靠的高品质企业级框架为历史使命。USE LEEVEL DO BETTER And More Information...

  • 官方网站: https://www.queryphp.com/
  • 官方网站国内镜像: https://queryphp.gitee.io/
  • 开发文档: https://www.queryphp.com/docs/

特性

  • 生产就绪 (Production-ready)
  • 简单高性能路由
  • 富于表现力的模板引擎
  • 基于领域驱动设计的强大 ORM
  • 高质量代码及高覆盖率单元测试

如何安装

composer create-project hunzhiwange/queryphp myapp
php leevel server <Visite http://127.0.0.1:9527/>

b512d74b7b17c4a43c4318fd6b8b0879.png

运行基于 IViewUI 的通用权限系统

cd frontend
npm install
npm run dev
http://127.0.0.1:9528/#/login

57e2a5e9001e91722b6af3650f9ede73.png

1dc91ec5c5fe7a6cf39130767af5106e.png

52ee7d2906b0c31507d5787dee362d51.png

d6f3b25a4d3d82ad10df2f01c1e763f2.png

Swoole Http 服务

php leevel http:server # php leevel http:server -d
php leevel http:reload
php leevel http:stop
php leevel http:status

Swoole Websocket 服务

php leevel websocket:server # php leevel websocket:server -d
php leevel websocket:reload
php leevel websocket:stop
php leevel websocket:status

Go RoadRunner 服务

/data/server/roadrunner-1.8.2-darwin-amd64/rr serve -d -v # -d = debug
/data/server/roadrunner-1.8.2-darwin-amd64/rr http:reset
/data/server/roadrunner-1.8.2-darwin-amd64/rr http:workers -i

版权协议

QueryPHP 是一个基于 MIT license 授权许可协议的开源软件.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值