4

私は、新しい Zend Framework が大好きです。これまでに前のバージョンで 1 つのプロジェクトを行ったことがあり、理解するのが非常に難しい部分を含む新しいプロジェクトを学ぶことにしました。

ウェビナーや YouTube ビデオを見たり、ドキュメントを読んだり、コードを読むだけでこのフレームワークを理解しようとしていますが、理解できないことはほとんどありません。

ウェビナーにはたくさんの情報がありますがEventManager、私は英語が苦手なので、スピーチを 100% 理解することはできません。

イベントマネージャーがイベントを管理していることは知っていますが、それは非常に明白ですが、その使用方法はよくわかりません.ウェビナーの1つで、簡単な例をいくつか提供していますが、このコードをどこに置くべきかを説明していませんmodule.php.ファイルですか? または、説明付きの実用的な例を見せていただければ、他の場所でポイントを確認できます。

次のことは、 after が次のように使用さ$eれるほとんどの関数に引数として渡される不思議なことですModule.php:$e->getApplicationまたは、これが何を$e表しているのだろうか? 何の例ですか?次は、これらの関数に「自動的に」渡される方法です。

別の問題: 呼び出されるモジュールごとに指定された構成ファイルmodule.config.phpには、多くのことが含まれています。私はそれらを理解したルートのポイントを得ましたが、呼び出し可能オブジェクトとファクトリが何であるかわかりません。ウェビナーの 1 つで次のように説明されています。invokables はクラスへのパスであり、factory は呼び出し可能な関数またはクラスです (思い出せません)。要点はOKです。理論的な話では意味がありますが、いくつかの例を詳細な説明とともに提供してください。それらのファクトリと呼び出し可能オブジェクトはどこから来るのか、その他私が知る必要があるものです。

もう 1 つのことは、これらの構成ファイルには多くの構成の可能性があるということです。"keys"=>"values"これらのファイルで可能なことに関する情報はどこにありますか?

今はここまでですが、まだ答えられていない質問があります。誰かが私を助けることができるなら、私はこの人にメールで対応してくれることを本当に感謝しています.


わかりました 1 つの問題が解決されました。神秘的な &e に関するものなので、誰かがここに興味を持っている場合は解決策です:

この $e 変数インスタンスは、module.php ファイルで使用する関数によって異なります。

ケース 1: init() -> &e はモジュール マネージャーのインスタンスです ケース 2: onBootstrap() -> &e は MvcEvent のインスタンスです (他のケースが見つかった場合はお知らせください)

問題は、イベントがトリガーされたときにこれらのメソッドが呼び出されるため、これらの関数がコードに表示される場合、リッスンしているリスナーによってこれらの関数に不思議な &e が渡されることです (これは私の単純なロジックですので、嫌いにならないでください)

他にもまだ答えなければならない質問があります。意味のある答えがわかり次第、お知らせします。

4

2 に答える 2

3

ストック ZF2 コード内で$eは、常に のインスタンスですZend\EventManager\EventManagerInterface。通常はZend\EventManager\Eventまたは のいずれかZend\Mvc\MvcEventです。

クラスの EventManager はイベントをトリガーし、その結果、リスナー コールバックが呼び出されます。各リスナー コールバックには のインスタンスが渡され、Eventこれにはいくつかの便利なメソッド、特にgetTarget()とがありgetParams()ます。の他のインスタンスにはEventManagerInterface通常、より特殊なメソッドがあります。MvcEvent特に、 、 、 などのコンポーネントに関連するメソッドがMvcあります。getApplication()getRouter()getRequest()getResponse()

于 2012-09-08T07:43:02.113 に答える