ホームページ  >  記事  >  バックエンド開発  >  QueryPHP V1-beta.5 により ORM 設計エクスペリエンスが向上

QueryPHP V1-beta.5 により ORM 設計エクスペリエンスが向上

藏色散人
藏色散人転載
2019-09-16 11:17:261678ブラウズ

QueryPHP v1.0.0-beta.5、このバージョンは主に ORM を改善し、多くの詳細を最適化します。

QueryPHP について

QueryPHP は、最新の高性能 PHP プログレッシブ コルーチン フレームワークです。私たちは依然として従来の PHP-FPM シナリオを主に指向しており、エンジニアのユーザー エクスペリエンスに重点を置いています。歴史的な使命は、すべての PHP アプリケーションに優れたフレームワークを提供することです。

単体テスト カバレッジ 100% にはバグがあり、フレームワークのコアは Zephir に基づいて実装され、Swoole コルーチンに依存することでビジネス パフォーマンスが向上しますが、将来的には徐々に改善されるでしょう。私たちのビジョンは、LEEVEL を SWOOLE でより効果的に使用して、貴社のビジネスがより多くのユーザー サービスをサポートできるようにすることです。

#https://github.com/hunzhiwange/queryphp

https://gitee.com/dyhb/queryphp

https://www.queryphp.com

更新ログ

[フレームワーク] 基盤となる Redis サービスを分割し、IOC に登録するコンテナの場合、

[フレームワーク] を使用して独自の dd を削除し、デバッグ関数をダンプできます。symfony にはそれが付属しているため、もう行う必要はありません。

[フレームワーク] グローバル関数アプリ、hl ヘルパー関数を削除、静的プロキシによるアプリ (エイリアス Leevel) を実装、App::path ()、アプリは IOC のメソッド App::make () にアクセスできるコンテナ「リクエスト」)。

[フレームワーク] プロキシ \Leevel\Kernel\Proxy\IApp 内のすべてのインターフェイス デザインを削除し、コンポーネント内のプロキシを削除し、代わりに @method を使用して IDE ヘルパーを実装し、自動的にこのようなコマンドを生成します。

[フレームワーク] テストを容易にするために、swoole ホット リロード コードを最適化します。

[フレームワーク] システム例外処理コンポーネントを改善し、システムの組み込み例外を抽象型に変更してビジネス層の継承を促進して例外をより適切に処理し、ビジネス処理例外\Leevel\Kernel\Exception\BusinessExceptionを追加します。例外応答もミドルウェアによって処理されます。

[フレームワーク] コア カーネルとルーティングは CORS オプション リクエストの処理をサポートし、カスタム ミドルウェアを使用してクロスドメイン アクセスの問題を簡単に処理し、ルーティング バインディング解析メソッドを分割してコードを明確にします。

[フレームワーク] アソシエーション モデル、ORM アソシエーション クエリ ソース値が空の特殊な処理を改善し、後続のクエリを実行しなくなり、データベース クエリを削減し、ネストされたアソシエーション プリロード クエリが実行されないバグを修正しました。

[フレームワーク] 各コンポーネントのヘルパー関数への静的アクセスを追加し、f 呼び出しを容易にするために各組手関数を別個のファイルに分割します。

[フレームワーク] 一部の合意されたエンティティ名のハードコーディングを避けるために、CONSTRUCT_PROP_WHITE、MIDDLE_SOURCE_KEY などの構成エンティティを追加します。

[フレームワーク] データベース PDO クエリの改善。数値の場合は数値を返し、すべての文字列を返さなくなりました。

[フレームワーク] クエリは、非常に特殊なシナリオを処理するために where ('foo', '=', null) のサポートを追加します。以前はエラーが直接報告されていました。

[フレームワーク] エンティティ \Leevel\Database\Ddd\Entity toArray の設計を改善し、null が自動的に無視されるようになりました。

[フレームワーク] エンティティ \Leevel\Database\Ddd\Entity プロパティ、withProps,withProp,hasProp,prop へのアクセスに関する設計を改善します。

[フレームワーク]entity\Leevel\Database\Ddd\Entity のソフト削除に関する設計を改善 const DELETE_AT でエンティティを定義すると、システムのクエリと削除が自動的にソフト削除されます。削除は、withSoftDeleted を通じてクエリすることもできます。

[フレームワーク] Entity\Leevel\Database\Ddd\Entity のクエリ エンティティ find ($id) を findEntity ($id) に改善し、理解しやすくしました。例外により、find の使用との競合を回避できます。 ()クエリ理解です。

[フレームワーク] Redis 接続プールの接続を修正し、PHPRedis ドライバーが再接続をサポートします。

[フレームワーク] バリデーターは、検証パラメーター not_between:1,5 を int および float に自動的に変換し、フレームワークが統一された強力な型の全体的な方向を達成できるようにします。例外データベース固有の検証\Leevel\Validate \UniqueRule は int. と float を自動的に認識し、パフォーマンスに影響を与えるインデックスを使用せずにデータベース クエリでの変換型を回避します。

[フレームワーク]entity\Leevel\Database\Ddd\Entity クエリの設計を改善し、クエリ マジック メソッドを削除します。__call と ___callStatic はブロックされ、すべてのクエリは静的エントリ選択 (エイリアス検索、保持) を通過する必要があります。 QeePHP の習慣に敬意を表するため)、メタ (QeePHP に敬意を払う習慣を維持する) が開始され、IDE ヘルパーのサポートと組み合わせることで、IDE を完全にサポートします。

[フレームワーク] エンティティ接続 \Leevel\Database\Ddd\Entity カット ライブラリ設計が改善されました。各エンティティは withConnect を実装し、それ自体で接続します。これにより、より更新され、制御可能になり、カット ライブラリ セキュリティ サンドボックス connectSandbox が提供されます。

[フレームワーク] PDOStatement->debugDumpParams () を使用して最終 SQL を取得し、同時にその SQL をデバッグ コンポーネントのログに書き込み、開発とデバッグを容易にします。

[フレームワーク] トランザクション ワーク ユニット \Leevel\Database\Ddd\UnitOfWork では、ソフト削除と強力な削除のサポートが追加され、\Leevel\Database\Ddd\Repository に対するウェアハウス調整も含まれています。

[フレームワーク] すでにデータが更新されているエンティティおよびリポジトリのフラッシュされた機能を修正および削除します。これは不要です。

[テスト] 10 を超える swoole 関連のテスト ケースとその他、3,080 を超える単体テスト、および 10,000 のアサーションを追加しました。

[アプリケーション] QueryPHP 自体は IViewUI をベースとした標準的なバックエンドであり、独自のリソースベースの権限システムを備えていますが、フレームワークに多くの調整が加えられたため、バックエンドは操作を容易にするために適宜調整されています。

[アプリケーション] QueryPHP 自体は、主にカード操作を改善し、クエリをサービスに組み込むためのワークフローを導入します。

ロードマップ

[フレームワーク] Beta 4-6 は主に、Swoole 4 コルーチンの最新バージョンを完全にサポートします。

[フレームワーク] RC バージョンでは計画機能が凍結され、バグの修正、単体テスト、ドキュメントの改善のみが行われます。

[フレームワーク] v1.0.0 の正式バージョンは、PHP 7.4 とともに https://wiki.php.net/todo/php74 でリリースされ、2019.12 にリリースされる予定です。

連絡先

https://www.queryphp.com

ヘルプ

QueryPHP は 2016 年 10 月にリリースされました。 2010 年 7 月に開始した初期の PHP フレームワークである DoYouHaoBaby フレームワークに基づいて開発されました。

可能だと思われる場合は、友人に試してみてフォローしてもらうことをおすすめします。興味のある人が一緒に開発できるように願っています。このドキュメントは、単体テストとコメントに基づいて自動化するのが比較的簡単です。

以上がQueryPHP V1-beta.5 により ORM 設計エクスペリエンスが向上の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はlearnku.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。