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
优化
变更
测试和文档
开发路线
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 授权许可协议的开源软件.