您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關QueryPHP是什么,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
QueryPHP v1.0.0-beta.5, 這個版本主要改進 ORM 和大量細節的優化。
關于 QueryPHP
QueryPHP 是一款現代化的高性能 PHP 漸進式協程框架,我們還是主要面向傳統 PHP-FPM 場景,以工程師用戶體驗為歷史使命,讓每一個 PHP 應用都有一個好框架。
百分之百單元測試覆蓋直面 Bug,基于 Zephir 實現框架核心常駐,依托 Swoole 協程提升業務性能,此刻未來逐步漸進。 我們的愿景是 USE LEEVEL WITH SWOOLE DO BETTER, 讓您的業務撐起更多的用戶服務。
https://github.com/hunzhiwange/queryphp
https://gitee.com/dyhb/queryphp
https://www.queryphp.com
更新日志
【framework】將底層 redis 服務拆分出來注冊到 IOC 容器,可以方便使用
【framework】刪除自己的 dd,dump 調試函數,Symfony 自帶不需要再弄了。
【framework】移除全局函數 app,hl 助手函數,由靜態代理實現 App(別名 Leevel)來,App::path (),App 可以訪問 IOC 容器中的方法 App::make ('request')。
【framework】刪除代理中所有接口設計 \Leevel\Kernel\Proxy\IApp ,刪除組件中的 Proxy 改為用 @method 來實現 IDE helper, 并內置一個用于生成這樣的命令工具自動生成。
【framework】優化 swoole 熱重載代碼,利于測試。
【framework】改進系統異常處理組件,例外將系統內置異常改為 abstract 方便業務層繼承更好地處理異常,添加一個業務處理異常 \Leevel\Kernel\Exception\BusinessException, 異常響應也會經過中間件處理。
【framework】核心 kernel 和路由支持對 CORS options 請求的處理,利用自定義中間件輕松處理跨域訪問問題,分拆路由綁定解析方法,代碼更清。
【framework】關聯模型,改進 ORM 關聯查詢源值為空的特殊處理 ,不再執行后續查詢,減少數據庫查詢,修復嵌套關聯預載入查詢未執行到的 BUG。
【framework】為各個組件助手函數添加一個靜態訪問,分拆各個組手函數到單獨的文件方便 f 調用。
【framework】實體添加更多 const 如 CONSTRUCT_PROP_WHITE,MIDDLE_SOURCE_KEY 避免寫死實體一些約定的名字。
【framework】數據庫 PDO 查詢改進,該是數字就返回數字,不再全部返回字符串。
【framework】查詢新增 where ('foo', '=', null) 的支持,處理非常特殊場景,以前直接報錯。
【framework】改進實體 \Leevel\Database\Ddd\Entity toArray 設計,現在 null 會被自動忽略。
【framework】改進實體 \Leevel\Database\Ddd\Entity 屬性相關設計,withProps,withProp,hasProp,prop 來訪問。
【framework】改進實體 \Leevel\Database\Ddd\Entity 軟刪相關設計,實體一旦定義了 const DELETE_AT,系統查詢和刪除自動走軟刪除,也可以通過 withSoftDeleted 查詢包含軟刪除的數據,forceDelete 強制刪除。
【framework】改進實體 \Leevel\Database\Ddd\Entity 中查詢實體 find ($id) 改為 findEntity ($id), 更容易理解,例外可以避免和 find () 查詢使用理解沖突。
【framework】修復 redis 連接池連接 PHPRedis 驅動支持重連。
【framework】驗證器會自動轉換驗證參數 not_between:1,5 為 int 和 float,以便于框架實現統一強類型的整體方向,例外數據庫唯一驗證 \Leevel\Validate\UniqueRule 自動識別 int 和 float,避免數據庫查詢出現轉換類型而不再走索引影響性能。
【framework】改進實體 \Leevel\Database\Ddd\Entity 查詢設計,去掉查詢魔術方法,__call 和 ___callStatic 被屏蔽,所有查詢均需要通過靜態入口 select (別名 find, 保留致敬 QeePHP 習慣),meta (保留致敬 QeePHP 習慣) 發起,再加上 ide helper 支持,完美支持 IDE。
【framework】改進實體連接 \Leevel\Database\Ddd\Entity 切庫設計,由每個實體自己實現 withConnect 和 connect,更加更新可控,提供切庫安全沙盒 connectSandbox。
【framework】采用 PDOStatement->debugDumpParams () 來獲取最后的 SQL,同時在 debug 組件將 SQL 寫入日志方便開發調試。
【framework】事務工作單元 \Leevel\Database\Ddd\UnitOfWork 增加對軟刪除」強刪除的支持,也包含倉儲對此的調整 \Leevel\Database\Ddd\Repository。
【framework】修復并刪除實體和倉儲中的 flushed 已經刷新過數據的特性,無必要。
【tests】新增 10 多例 swoole 相關的測試用例和其它,單元測試 3080 多例,斷言 10000+。
【application】QueryPHP 自身是一個基于 IViewUI 的標準后臺,自帶基于資源的權限系統,由于框架大量調整后臺做了相應的調整以便于運行。
【application】QueryPHP 自身是主要引入 Workflow 來改善 curd 操作,將查詢并入到服務中來。
RoadMap
【framework】Beta 4-6 主要是對 Swoole 4 最新版的協程完善支持。
【framework】RC 版本會凍結計劃功能,只修復 BUG、單元測試 和文檔完善。
【framework】v1.0.0 正式版本將隨 PHP 7.4 版本后發布 https://wiki.php.net/todo/php74,計劃是在 2019.12 發布。
QueryPHP 是在 2016 年 10 月開始基于一個我早年的 PHP 框架 DoYouHaoBaby 框架開發的,這個早年的框架是我在 2010 年 7.8 月開始的。
如果你覺得可以,可以推薦朋友來試用一下,關注一哈,希望吸引到有興趣的一起開發,文檔基于單元測試加注釋來自動化的比較簡單。
關于QueryPHP是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。