企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
## 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中的回调