PHPセッション変数をチェックし、設定されていない場合は特定の場所にリダイレクトする単純なCakePHPコンポーネントを作成しようとしています。この関数は複数のコントローラーで使用される予定であり、コードを 1 か所 (DRY およびすべて) に配置したいだけです。
私が直面している問題は、 Cake がController
関数をコンポーネントにアクセス可能にしないため、 を呼び出すことができないこと$this->redirect([routing array])
です。
これを回避する方法はありますか?コントローラーでチェックインする必要がある関数に return ステートメントを追加しないことをお勧めします。これは、関数が既に行っているすべて (1 行の if ステートメント) であり、抽象化の不要なレイヤーのように思われるためです。関数をケーキの外の別のファイルに入れようとしており include
、この関数を必要とするすべてのコントローラーに、これをハックする方法として追加するだけです。