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 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: 删除所有协程演示控制器,减少初始应用的臃肿
优化
- #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: 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...
- 官方网站: 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/>
运行基于 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 授权许可协议的开源软件.

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Mybatisplus-plus 1.0.0 发布,扫描 Entity 类构建 ResultMap 主键填充
MybatisPlus-plus 1.0.0增加了自动填充优化功能 和 自动扫描Entity类构建ResultMap功能。 在xml中编写resultmap是件头痛的事,特别是表连接时返回的对象是多样的,如果不按照map返回,分别建resultmap工作量会翻倍。 使用@AutoMap注解entity实体类,就可以在应用启动时解析使用@TableField注解的字段,自动生成scan.mybatis-plus_xxxx为id的resultMap可以在xml中直接配置使用这个resultMap实例,并且还支持继承关系,扫描实体子类会附加上父类的字段信息一起构建子类的resultmap对于各种表连接形成的返回实体对象,可以通过继承来生成。通过扫描后自动构建各种resultmap,在xml中引用。 除了普通字段填充外,还支持自动填充主键字段,解决原生mybatisplus不支持多个主键的问题
- 下一篇
云办公系统 skyeye v3.3.9 发布,ERP 模块升级
云办公系统 skyeye v3.3.9发布。 erp:https://gitee.com/doc_wei01/erp-pro OA:https://gitee.com/doc_wei01/skyeye 项目开发计划:https://docs.qq.com/doc/DQlRxcVRMWWVjbU1i?_from=1&disableReturnList=1,有问题可以联系作者,详情请看开发计划。 更新内容: 收款单操作选择客户方式修改 收入单操作选择客户方式修改 新增个人中心界面(简易版) 国际化英文版修改中(耗时耗力)... 效果图: 效果图 效果图
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS关闭SELinux安全模块
- CentOS8编译安装MySQL8.0.19
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS8安装Docker,最新的服务器搭配容器使用