ThinkPHP3.0完全开发手册
ThinkPHP的新版基础模型类Model具有很好的扩展性,对模型的CURD方法都提供了扩展接口,包含:
接口名称 |
所属方法 |
接口方法(参数) |
初始化接口 |
全局 |
_initialize() |
表达式过滤接口 |
全局 |
_options_filter(&$options) |
写入前置接口 |
add方法 |
_before_insert(&$data,$options) |
写入后置接口 |
add方法 |
_after_insert($data,$options) |
更新前置接口 |
save方法 |
_before_update(&$data,$options) |
更新后置接口 |
save方法 |
_after_update($data,$options) |
数据写入接口 |
add、save方法 |
_facade($data) |
数据库切换接口 |
db方法 |
_after_db() |
删除后置接口 |
delete方法 |
_after_delete($data,$options) |
查询后置接口 |
select方法 |
_after_select(&$result,$options) |
查询后置接口 |
find方法 |
_after_find(&$result,$options) |
目前提供的的扩展模型包括:高级模型(AdvModel)、视图模型(ViewModel)、关联模型(RelationModel)和Mongo模型都是继承Model类并且都通过了扩展完成了很多其他的功能。
不过在某些情况下,模型扩展并不一定要继承基础模型Model。