您的位置:首页 > 编程语言 > PHP开发

Class yii\base\Event

2017-03-07 00:00 211 查看
所有类 | 属性 | 方法

继承yii\base\Event » yii\base\Object
可用自版本2.0
事件是所有事件类的基类.

它封装了参数与事件相关联。$sender 的发送方属性描述谁提高了事件。和$handledproperty表示如果事件处理。如果一个事件处理程序集处理$handled
true
,,其余的uninvoked处理程序将不再被称为处理事件。

此外,附加事件处理程序时,额外的数据可能被传递,并通过$data 是可用的属性调用事件处理程序时

有关事件的更多细节和使用信息,请参阅指南文章事件。

公共属性

隐藏继承属性

属性类型描述定义在
$datamixed的数据传递给yii\base\Component::on()添加一个事件处理程序。
yii\base\Event
$handledboolean是否处理事件。yii\base\Event
$namestring事件的名称。yii\base\Event
$senderobject这个事件的发送者。yii\base\Event

公共方法

隐藏继承方法

方法描述定义在
hasHandlers()返回一个值指示是否有处理程序连接到指定的类级别的事件。yii\base\Event
off()分离一个事件处理程序从一个类级别的事件。yii\base\Event
offAll()分离所有注册类级别事件处理程序。yii\base\Event
on()附加一个事件处理程序来一个类级别的事件。yii\base\Event
trigger()触发一个类级别的事件yii\base\Event

属性详情

$data public property

的数据传递给yii\base\Component::on() 添加一个事件处理程序。注意,这个变化根据当前执行事件处理程序。

public mixed $data = null

$handled public property

是否处理事件。默认值为
false
.。当处理程序集这是
true
,,事件处理将停止而忽略其余的uninvoked事件处理程序

public boolean $handled = false

$name public property

事件的名称。设置此属性,yii\base\Component::trigger()trigger()。事件处理程序可以使用这个属性来检查它是什么事件处理。

public string $name = null

$sender public property

这个事件的发送者。如果没有设置,该属性将被设定为
trigger()
方法的对象。这个属性也可能是一个
null
的时候触发这个事件是一个类级别的事件在一个静态上下文。

public object $sender = null

方法详情

hasHandlers() public static 方法

返回一个值指示是否有处理程序连接到指定的类级别的事件。

注意,这个方法也会检查所有父类是否有任何处理程序连接到指定的事件。

public static boolean hasHandlers ( $class, $name )
$classstring|object完全限定类名指定的对象或类级别的事件.
$namestring事件的名称。
returnboolean是否有处理程序附加到事件。
off() public static 方法

分离一个事件处理程序从一个类级别的事件。

这个方法是相反的on().

参见 on().

public static boolean off ( $class, $name, $handler = null )
$classstring事件处理程序的完全限定类名需要分离。
$namestring事件的名称。
$handlercallable事件处理程序被删除。如果它为
null
,,所有连接到指定的事件处理程序将被删除。
returnboolean一个处理程序是否发现并分离
offAll() public static 方法 (可用自版本 2.0.10)

分离所有注册类级别事件处理程序.

参见:

on()

off()

public static void offAll ( )
on() public static 方法

附加一个事件处理程序来一个类级别的事件。

当一个类级别事件触发、事件处理程序附加到类和所有将调用父类.

例如,下面的代码一个事件处理程序附加到
ActiveRecord
afterInsert
事件

Event::on(ActiveRecord::className(), ActiveRecord::EVENT_AFTER_INSERT, function ($event) {
Yii::trace(get_class($event->sender) . ' is inserted.');
});

每个成功的处理程序将被调用ActiveRecord插入。

如何声明一个事件处理程序的详细信息,请参阅 yii\base\Component::on().

参见 off().

public static void on ( $class, $name, $handler, $data = null, $append = true )
$classstring的完全限定类名需要附加事件处理程序。
$namestring事件的名称。
$handlercallable事件处理程序。
$datamixed数据被传递到事件处理程序当事件被触发。当事件处理程序被调用时,该数据可以通过访问yii\base\Event::$data.
$appendboolean是否新的事件处理程序附加到现有的处理程序列表。如果错误,新的处理程序将插入到现有的处理程序列表的开始。
trigger() public static 方法

触发一个类级别的事件。

这个方法将导致调用事件处理程序附加到命名的事件为指定的类及其所有父类。

public static void trigger ( $class, $name, $event = null )
$classstring|object完全限定类名指定的对象或类级别的事件.
$namestring事件的名称
$eventyii\base\Event事件参数。如果没有设置,默认yii\base\Event对象将被创建
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: