# 事件
[TOC]
## 場景
1. 登陸權限的檢查,設置一些檢查機制,任何一個監聽器返回 `false` 就會中斷后面的執行
2. 文章過濾事件,在文章顯示之前可能需要一些過濾替換等操作,但是同時也為啦以后可以加更多,可以預先在顯示文章之前加一個監聽事件,然后在處理事件之前,在這個事件上掛載多個監聽器,這樣處理事件的時候把文章內容傳進去讓這些監聽器依次進行處理然后才顯示
如下:
先添加一個事件,注意第二個參數為引用傳遞,會改變變量的值
``` php
$content='文章內容';
Event::listen('article_before', $content);
echo $content;
```
然后在其它地方就可以任意添加事件監聽器,注意方法的參數和監聽時傳為的參數一至
``` php
Event::add('article_before', 這里是個可調用函數或類的方法);
// ....添加任意多個操作
```
> 處理文章因為不管返回值是什么都是要顯示的,所以這個操作也可以使用中間件來完成