观察者:简介
一个事件基底系统能让你添加行为到指定事件。当一个事件被观察, Orm 将自动呼叫所有添加的观察者,去看是否有任何事情要它们去做。
Orm 是 物件关联对映(Object Relational Mapper) 的简写,它做两件事:
对应你资料库里的资料列到物件, 并能让你在这些物件之间建立关係。
它紧随 活动记录模式( Active Record Pattern),但也受到其他系统的影响。
一个事件基底系统能让你添加行为到指定事件。当一个事件被观察, Orm 将自动呼叫所有添加的观察者,去看是否有任何事情要它们去做。
你可以用两种方式添加观察者:只添加名称让观察者在所有事件被呼叫, 或带着观察者做为名称,以及一个要让观察者被呼叫的特定事件阵列。
当观察者与模型在相同命名空间并且以 Observer_ 前缀时, 你可以略去 "Observer_" 前缀,其他情况下你必须提供完整的类别名称。
class Model_Article
{
protected static $_observers = array(
'example', // 将为所有事件呼叫 Observer_Example 类别
'Orm\\Observer_CreatedOn' => array(
'events' => array('before_insert'), // 将只在 before_insert 事件呼叫 Orm\Observer_CreatedOn
)
);
}