您现在的位置是:首页 > 文章详情

QueryPHP 1.1.0-alpha.2 发布,模板引擎精简和 PHP 8 注解路由

日期:2020-12-06点击:521

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 App\App\Controller\Swagger; class ApiDemo { /** * @OA\Get( * path="/swagger/api/v1/demo/{name}/", * summary="Just test the router", * @OA\Parameter( * name="name", * in="path", * description="name test", * required=true, * @OA\Schema( * type="string", * ) * ), * @OA\Response( * response=405, * description="Invalid input" * ), * ) */ public function index(string $name): string { return 'swagger api demo '. $name; } }

变更为

 <?php namespace App\App\Controller\Swagger; 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: 删除所有协程演示控制器,减少初始应用的臃肿

优化

框架核心 framework

修复

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

优化

  • #95822e0 refactor: Leevel\Cache\IBlock: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: 删除 \Leevel\Router\View 和优化视图代码
  • #80a47ff refactor(mail): 修复邮件中的视图,因为视图组件的变更

测试和文档

开发路线

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

关于 QueryPHP

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

特性

如何安装

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

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

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

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 授权许可协议的开源软件.

原文链接:https://www.oschina.net/news/122616/queryphp-1-1-0-alpha2-released
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章