PHP.MVCテンプレートタグシステム(2)_PHPチュートリアル
Php.MVC タグアクションディスパッチャー
TagActionDispatcher は、基本的なテンプレート タグへのアクセスをサポートする標準の ActionDispatcher クラスの実装です。TagActionDispatcher クラスは、デフォルトの ActionDispatcher と同じ ActionObjects コレクションと ViewResourcesConfig プロパティをサポートしますが、テンプレート タグの有無にかかわらず、システムで使用できます。追加の処理により、パフォーマンスが若干低下します。
テンプレート タグ ライブラリは、PHP.MVC フレームワークのサブシステムであり、いくつかの単純なテンプレート タグをサポートします。 MVC テンプレート タグ システムの概要。左側は、TagActionDispatcher のプログラム フローと、タグ テンプレートがこれらのクラスの相互作用を可能にする方法を示しています。
1. 初期化
リクエストから $form、$errors、$data オブジェクトを取得します (存在する場合)これらのオブジェクトのうちの 1 つが以前に作成されている場合 (Action クラスなど)、そのオブジェクトはリソース テンプレートに表示されません。それ以外の場合、オブジェクトは NULL に設定されます。
を含む ViewResourcesConfig オブジェクトへの参照を取得します。
ViewResourcesConfig パラメータでテンプレート ソース ファイルとコンパイル済みテンプレート ファイルへのパスを設定します。
テンプレート ソース ファイルの拡張子 (「.ssp」の場合があります) が使用されます。 ViewResourcesConfig->tagFlagStr パラメーターを使用して、このページを処理する必要があるかどうかを判断します。そうでない場合、ページは標準 (タグなし) テンプレート ファイルとして処理されます。次のように、view-resources 要素でタグ ファイル拡張子を構成できます。
tagFlagStr = ".ssp"
tagFlagCnt = "-4"
...
tagFlagStr は、タグ テンプレート ソース ファイルを前処理できることを示します。 : myPage.ssp この拡張子は、タグ処理をトリガーします。 属性 tagFlagCnt は、「.」を含むファイル名の末尾の文字数を定義します (xxxYyy.ssp)。デフォルト値は .ssp と -4 なので、テンプレート ファイル名は myPage.ssp のようになります。
3. テンプレートを処理します。タグ システムは、ViewResourcesConfig->processTags 属性に基づいてタグ プロセッサを実行するかどうかを決定します。この属性が true の場合、テンプレート ページ (およびそれに含まれるページ) はタグ プロセッサ クラスによって処理されます。それ以外の場合、タグ プロセッサは処理されません。開発者は開発中にこれを true に設定するだけで済み、それ以外の場合は処理されません。ただし、変更されたタグは processTags 属性が true に設定されている場合にのみコンパイルされることに注意してください (これは、compileAll 属性の設定に依存します)。次のように view-resources 要素の processTags 属性を定義します:
processtags = "true"
...
& lt;/view-resources & gt; 注意してください。値は false です。
4. tagactionDispatcher がテンプレート ページを処理すると決定した場合、制御はテンプレート タグ システムに渡され、変更されたページのみをコンパイルするかどうかが決定されます。または、すべてのページをコンパイルします。この動作は、ViewResourcesConfig->compileAll 属性を使用して定義されます。次のように、compileAll 属性を定義します。
この属性のデフォルトは
5. 変更されたページのみがコンパイルされます。
applyAll 属性が false (デフォルト値) に設定されている場合、たとえば、リクエストされたページが前回以降に変更されている場合、変更されたページのみがコンパイルされます。リクエストされた場合、このページはコンパイルされます。
6. すべてのページをコンパイルします。
`compileAll` 属性が設定されている場合、テンプレート タグ システムは、ページがそれ以降に変更されたかどうかに関係なく、常にページをコンパイルします。開発中にこのオプションを使用すると、すべてのページが確実に処理されます。
テンプレート ページの処理後、制御は他のすべての VIEW リソースによって処理されます。通常の PHP.MVC テンプレート ファイル。TagActionDispatcher はコンパイルされたページ (ページを含む) を取得し、そのページをユーザーのブラウザーに出力します。 テンプレート タグ システムが呼び出されない場合、TagActionDispatcher は要求されたページを通常の VIEW リソースとして処理します。 , 標準の ActionDispatcher の代わりに TagActionDispatcher を使用できます。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









General Matrix Multiplication (GEMM) は、多くのアプリケーションやアルゴリズムの重要な部分であり、コンピューター ハードウェアのパフォーマンスを評価するための重要な指標の 1 つでもあります。 GEMM の実装に関する徹底的な調査と最適化は、ハイ パフォーマンス コンピューティングとソフトウェア システムとハードウェア システムの関係をより深く理解するのに役立ちます。コンピューター サイエンスでは、GEMM を効果的に最適化すると、計算速度が向上し、リソースが節約されます。これは、コンピューター システムの全体的なパフォーマンスを向上させるために非常に重要です。 GEMM の動作原理と最適化方法を深く理解することは、最新のコンピューティング ハードウェアの可能性をより有効に活用し、さまざまな複雑なコンピューティング タスクに対してより効率的なソリューションを提供するのに役立ちます。 GEMMのパフォーマンスを最適化することで

7月29日、AITO Wenjieの40万台目の新車のロールオフ式典に、ファーウェイの常務取締役、ターミナルBG会長、スマートカーソリューションBU会長のYu Chengdong氏が出席し、スピーチを行い、Wenjieシリーズモデルの発売を発表した。 8月にHuawei Qiankun ADS 3.0バージョンが発売され、8月から9月にかけて順次アップグレードが行われる予定です。 8月6日に発売されるXiangjie S9には、ファーウェイのADS3.0インテリジェント運転システムが初搭載される。 LiDARの支援により、Huawei Qiankun ADS3.0バージョンはインテリジェント運転機能を大幅に向上させ、エンドツーエンドの統合機能を備え、GOD(一般障害物識別)/PDP(予測)の新しいエンドツーエンドアーキテクチャを採用します。意思決定と制御)、駐車スペースから駐車スペースまでのスマート運転のNCA機能の提供、CAS3.0のアップグレード

Apple 16 システムの最適なバージョンは iOS16.1.4 です。iOS16 システムの最適なバージョンは人によって異なります。日常の使用体験における追加と改善も多くのユーザーから賞賛されています。 Apple 16 システムの最適なバージョンはどれですか? 回答: iOS16.1.4 iOS 16 システムの最適なバージョンは人によって異なる場合があります。公開情報によると、2022 年にリリースされた iOS16 は非常に安定していてパフォーマンスの高いバージョンであると考えられており、ユーザーはその全体的なエクスペリエンスに非常に満足しています。また、iOS16では新機能の追加や日常の使用感の向上も多くのユーザーからご好評をいただいております。特に最新のバッテリー寿命、信号性能、加熱制御に関して、ユーザーからのフィードバックは比較的好評です。ただし、iPhone14を考慮すると、

Machine Power Report 編集者: Wu Xin 国内版の人型ロボット + 大型模型チームは、衣服を折りたたむなどの複雑で柔軟な素材の操作タスクを初めて完了しました。 OpenAIのマルチモーダル大規模モデルを統合したFigure01の公開により、国内同業者の関連動向が注目を集めている。つい昨日、中国の「ヒューマノイドロボットのナンバーワン株」であるUBTECHは、Baidu Wenxinの大型モデルと深く統合されたヒューマノイドロボットWalkerSの最初のデモを公開し、いくつかの興味深い新機能を示した。 Baidu Wenxin の大規模モデル機能の恩恵を受けた WalkerS は次のようになります。 Figure01 と同様に、WalkerS は動き回るのではなく、机の後ろに立って一連のタスクを完了します。人間の命令に従って服をたたむことができる

4月11日、ファーウェイはHarmonyOS 4.2 100台のアップグレード計画を初めて正式に発表し、今回は携帯電話、タブレット、時計、ヘッドフォン、スマートスクリーンなどのデバイスを含む180台以上のデバイスがアップグレードに参加する予定だ。先月、HarmonyOS4.2 100台アップグレード計画の着実な進捗に伴い、Huawei Pocket2、Huawei MateX5シリーズ、nova12シリーズ、Huawei Puraシリーズなどの多くの人気モデルもアップグレードと適応を開始しました。 HarmonyOS によってもたらされる共通の、そして多くの場合新しい体験を楽しむことができる Huawei モデルのユーザーが増えることになります。ユーザーのフィードバックから判断すると、HarmonyOS4.2にアップグレードした後、Huawei Mate60シリーズモデルのエクスペリエンスがあらゆる面で向上しました。特にファーウェイM

DJIはまだ新しいアクションカメラを導入する計画を確認していません。その代わりに、GoPro は今年、9 月 4 日に 2 台の新しいアクション カメラを発表すると予告し、ライバルに先んじることになるようです。

Oracle データベースでのシステム日付の変更方法の詳細説明 Oracle データベースでのシステム日付の変更方法は、主に NLS_DATE_FORMAT パラメータの変更と SYSDATE 関数の使用です。この記事では、読者が Oracle データベースのシステム日付を変更する操作をよりよく理解し、習得できるように、これら 2 つの方法とその具体的なコード例を詳しく紹介します。 1. NLS_DATE_FORMAT パラメータメソッドの変更 NLS_DATE_FORMAT は Oracle データです

Linux と Windows は 2 つの一般的なオペレーティング システムで、それぞれオープン ソースの Linux システムと商用 Windows システムを表します。どちらのオペレーティング システムにも、ユーザーがオペレーティング システムと対話するためのコマンド ライン インターフェイスがあります。 Linux システムでは、ユーザーはシェル コマンド ラインを使用しますが、Windows システムでは、cmd コマンド ラインを使用します。 Linux システムのシェル コマンド ラインは、ほぼすべてのシステム管理タスクを完了できる非常に強力なツールです。
