Help us understand the problem. What is going on with this article?

ラッコはフィルタリング(CakePHP)がわからない#1

IT業界に漂流し、なんとか半年間エンジニアとして生きてます。オッターです。

業務の中でわからなかったことを、ドキュメントなどを読んで自分なりに噛み砕いていくつもりです。

今回は業務でこんな関数を見かけてわからんかったのでググってみたよ。

public function beforeFilter(Event $event){・・・
}

CakePHPのbeforeFilter()is何???

まずはドキュメント

コントローラーの各アクションの前に発動する Controller.initialize イベント中に呼ばれます。アクティブなセッションのチェックや、 ユーザーの権限の調査に適した場所です。

ふむ?APIの方で関数の説明を見てみた

コントローラアクションの前に呼び出されます。この方法を使用して、コンポーネントを構成およびカスタマイズしたり、各コントローラーアクションの前に実行する必要のあるロジックを実行したりできます。

要はbeforeFilterって名前をつけてやるとコントローラーのアクション(そのコントローラーで定めた関数とか?)の前に実行してくれるってわけだ。
TableRegistryとかで使うテーブルをそのコントローラーの変数として定義したりするinitializa中に呼ばれる、と
ふむふむ

HTTPリクエストのライフサイクル(流れとかフェーズとかそんな感じ)要所要所で呼び出せるようにCakePHPが用意したリクエストライフサイクルコールバックの一種なんだってさ。へ〜
https://book.cakephp.org/3/ja/controllers.html

じゃあフィルタリングって何よ???

せっかくなので通信の勉強もしましょうってことでググりました

フィルタリングって用語自体は、「通すべきものかどうか判断すること」だと

ふむ?ではbeforeFilterのフィルターは?クライアントからきた情報を通すか通さないか判断する処理ってことなのだろうか...

とりあえず今日はここまで

rakko-engineer
半年前にIT業界に漂流したラッコ。あれもできない、これもできないといいながら日々学んだことを発信中。フルスタックエンジニア兼エンジニア採用担当大臣としてなぜか活躍中。記事はリライトしたりするよ。フロントやデザインが好きだよ。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away