## instance - 綁定canal的instance
~~~
use api\Canal;
// 綁定canal中的instance,請先保證已經創建好對應的instance
Canal::instance('demo');
~~~
## filter - 設置需要過濾的條件
不設置則監聽所有數據庫的所有的表變化
~~~
use api\Canal;
// 監聽數據庫 db1下的所有數據表
Canal::filter([
'db1' => '*'
]);
// 監聽db1下的以demo開頭的數據表
Canal::filter([
'db1' => [
'demo_*'
]
]);
// 監聽db1下的 demo_1和demo_2兩個表
Canal::filter([
'db1' => [
'demo_1',
'demo_2'
]
]);
~~~
## watch - 開始監聽
注入數據庫變化的具體內容作為參數傳遞進回調方法
~~~
use api\Canal;
Canal::watch(function($data){
print_r($data);
});
~~~
## 完整示例
演示監聽數據庫“db1”中的所有表的數據變化
~~~
use api\Canal;
Canal::instance('demo')->filter([
'db1' => '*'
])->watch(function($data){
print_r($data);
});
~~~
命令行運行該控制器,此時數據庫中的任意表發生數據變化時,將觸發watch中的回調