この記事では、ThinkPHP の動作拡張 Behavior の実装方法をサンプル形式で詳しく紹介し、読者が ThinkPHP の開発をより柔軟に習得できるようにします。具体的な手順は次のとおりです。
ThinkPHP 動作拡張 (Behavior) プロセス:最初のステップは、構成ファイル情報を読み取ることです:
リーリー
リーリー
リーリー
ThinkPHPLibraryThinkThink.class.php は、初期化が完了した後に App::run();
を呼び出します
ThinkPHPLibraryThinkApp.class.php ファイルは次のとおりです:
プログラム
がフックを使用して、アプリの初期化の前にこのアクションを監視 (チェック) し、処理する必要があるものがあるかどうかを確認していることがわかります。 $tags['app_init'] をループしてクラス名を取得し、クラス名を介して動作を自動的に実行してクラス実行メソッドを拡張します
すべてのフックは次のとおりです:
リーリーデメリットは以下の通りです
1. 順序は制御できません (構成ファイルには順序を制御するための特別なパラメーターがありません)。たとえば、app_init に同時に 2 つのモニターがある場合、どちらのメソッドが最初に呼び出されます。2. 監視はグローバル監視ではありません。内部の記述が厳格すぎるため、設定ファイルを通じて各操作を自動的に制御できません (パフォーマンスを考慮して追加されなかった可能性があります)。 利点は次のとおりです:
1. 多くの動作拡張を実装できます
2. プロキシ検出、ブラウザのアンチリフレッシュ検出、操作ルーティング検出などを実行できます。
概要:
動作拡張とは、プログラムの特定の操作中に特定の機能を追加で実行することです。例えば、プログラムがデータベースの操作や読み込みを行う際に、explianを通じて性能情報を取得し、データ取得に一定の秒数を超えると、その情報がプロジェクトマネージャーなどにメールで送信されます。
thinkphp30 の Lib に新しく追加されたウィジェットと動作は主に何に使用されますか?
PHP 拡張クラスが Action からどのように継承するかを考えてください
技術サポート:論文領域9、卒業生に最高の卒業制作を提供します!